News
Serverspace Technologien in den VAE: Einführung von Falconcloud
RF
27. Juli 2023
Aktualisiert August 1, 2023

Wie erstelle und passe ich .htaccess an?

Netzwerke Ubuntu Web-Server

Einleitung

Wir können uns die moderne Welt nicht ohne Online-Marktplatz, Shop, Suchmaschine, Messenger und alle wertvollen Komponenten des WEB vorstellen, die es uns ermöglichen, schneller zu kommunizieren. Aber neue Funktionen bringen uns auch neue Schwachstellen und Details mit sich, die wir beheben müssenapireagiere schnell. Für diese Optionen benötigen wir ein einzelnes Panel für den Steuerungsserver .htaccess!

Die Konfiguration von Webservern über Konfigurationsdateien ist aus mehreren Gründen eine gängige und komfortable Vorgehensweise:

  • Flexibilität: Mit Konfigurationsdateien können Webserver-Administratoren die Servereinstellungen genau an die spezifischen Anforderungen ihrer Website oder Anwendung anpassen. Diverse paramParameter wie Serververhalten, Sicherheitseinstellungen, virtuelle Hosts und Modulkonfigurationen können angepasst werden.
  • Benutzerfreundlichkeit: Konfigurationsdateien werden normalerweise in einem für Menschen lesbaren Format geschrieben, sodass Administratoren die Einstellungen leicht verstehen und ändern können. Diese Einfachheit ermöglicht schnelle Anpassungen und Aktualisierungen, ohne dass eine komplexe Benutzeroberfläche erforderlich ist.
  • Versionskontrolle: Konfigurationsdateien können mithilfe von Tools wie versioniert werden GitDadurch ist es einfacher, Änderungen zu verfolgen, mit einem Team zusammenzuarbeiten und bei Bedarf auf frühere Konfigurationen zurückzusetzen.
  • Portabilität: Konfigurationsdateien können zwischen verschiedenen Serverumgebungen verschoben werden, was die Bereitstellung einer Website oder Anwendung auf neuen Servern mit denselben Einstellungen erleichtert.
  • Automatisierung: Konfigurationsdateien können geändert oder prog generiert werdenramDies ermöglicht automatisch die Automatisierung der Servereinrichtung und -wartung. Dies ist besonders nützlich, wenn Sie mit mehreren Servern arbeiten oder Websites in einer Cloud-Umgebung bereitstellen.
  • Sicherheit: Die Trennung der Konfigurationseinstellungen vom Anwendungscode erhöht die Sicherheit. Wenn der Anwendungscode kompromittiert wird, bleiben vertrauliche Servereinstellungen in den Konfigurationsdateien geschützt.
  • Effizienz: Webserver können Konfigurationsdateien beim Start schnell lesen und analysieren, wodurch der Prozess der Änderungsanwendung effizient und schnell erfolgt.
  • Granularität: Konfigurationsdateien ermöglichen Administratoren die separate Steuerung verschiedener Aspekte des Servers. Sie können beispielsweise spezifische Einstellungen für verschiedene virtuelle Hosts, Verzeichnisse oder URL-Pfade konfigurieren.
  • Standardisierung: Viele Webserver verwenden gängige Konfigurationsdateiformate, wie z Apache's .htaccess oder Nginx's nginx.conf, sodass Administratoren ihr Wissen und ihre Erfahrung auf verschiedene Server-Setups anwenden können.

Insgesamt stellen Konfigurationsdateien eine unkomplizierte und effektive Möglichkeit zur Verwaltung von Webservern dar und gewähren Administratoren Kontrolle und Anpassungsoptionen zur Optimierung der Serverleistung und -sicherheit entsprechend ihren spezifischen Anforderungen.



Voraussetzungen:

  • Root-Rechte;
  • Ubuntu 20.04 oder höhere Version;
  • Mehrere Kenntnisse über Arbeitsbetriebssystem;
  • Apache Webserver.

Installation:

Der erste Schritt in dieser Anleitung beginnt mit der Aktualisierung und dem Upgrade des gesamten Systems für diesen Typ CLI Befehl unten:

apt update && apt upgrade -y
Update OS
Screenshot Nr. 1 – Betriebssystem aktualisieren

Wenn du schon hast Apache Webserver dann können Sie diesen Schritt der Installation überspringen und fortfahren, aber wenn Sie keinen Server vorbereiten, geben Sie den folgenden Befehl ein und stellen Sie sicher, dass Sie das benötigte Paket haben:

apt list | grep apache2
Package list
Screenshot Nr. 2 – Paketliste

Wenn wir danach unser Paket wie im Bild oben finden, installieren wir den Webserver, er wird automatisch ausgeführt und startet seinen Dienst:

apt install apache2
Installation apache2
Screenshot Nr. 3 – Installation apache2

Nach der Installation Apache2 wird es automatisch gestartet und seine Konfigurationsdateien befinden sich je nach Betriebssystem an unterschiedlichen Orten. In diesem Webserver verwenden wir httpd.conf (oder apache2.conf auf einigen Systemen) Konfigurationsdatei für die Einrichtung globaler PArameter. Reminder! Htaccess verwenden wir, um einige Verfahrensregeln außer Kraft zu setzen cliEnt-Abfrage und Optimierung unserer Server-Antwort.

Es ist wichtig sicherzustellen, dass Ihr Webserver die Verwendung von .htaccess-Dateien zulässt. Um dies zu erreichen, stellen Sie sicher, dass die AllowOverride-Direktive im Primärserver aktiviert ist Apache2 Konfigurationsdatei (httpd.conf oder apache2.conf). Wert ändern AllowOverride zu Alle:

nano ./etc/apache2/apache2.conf
Change value
Screenshot Nr. 4 – Wert ändern

Wenn Sie das benötigte Verzeichnis nicht finden können, verwenden Sie den folgenden Befehl:

cd / && find ./ -name apache2.conf && find ./ -name httpd.conf
Find config
Screenshot Nr. 5 – Konfiguration suchen

Durch die Aktivierung von AllowOverride gewähren Sie dem Server die Möglichkeit, Anweisungen zu interpretieren, die in .htaccess-Dateien in den Verzeichnissen Ihrer Website angegeben sind. Dies ermöglicht flexiblere und individuellere Konfigurationen auf Verzeichnisebene und verbessert so die Gesamtfunktionalität und Sicherheit Ihres Webservers.

Zur Konfigurationshierarchie der Standardeinstellungen:

Hierarchy of files
Screenshot Nr. 6 – Hierarchie der Dateien

Die Anordnung von Apache Dateien können je nach Betriebssystem und Installationsmethode variieren. Nachfolgend finden Sie jedoch die allgemeine Organisation, die in den meisten Installationen üblicherweise verwendet wird:

  • apache2.conf: Diese Datei dient als zentrale Datei Apache Konfigurationsdatei, die globale Einstellungen enthält und Server-Pa definiertrameter.
  • ports.conf: Eine wichtige Konfigurationsdatei, die für die Angabe der Ports verantwortlich ist, die der Server abhört.
  • Sites-verfügbar/: Dieses Verzeichnis enthält Konfigurationsdateien für jeden virtuellen Host. Hier können Sie verschiedene Host-Konfigurationen einrichten. Die aktivierten Hostkonfigurationen werden dann symbolisch aus dem Verzeichnis „sites-enabled/“ verlinkt.
  • Mods-verfügbar/: In diesem Verzeichnis finden Sie Konfigurationsdateien für verschiedene Apache Module, mit denen Sie bestimmte Funktionen verwalten und aktivieren/deaktivieren können.
  • Mods-fähig/: Es besteht aus symbolischen Links, die eine Verbindung zu den aktivierten Modulen aus dem Verzeichnis „mods-available/“ herstellen und die Module für aktivieren ApacheVerwendung.
  • conf-verfügbar/: Dieses Verzeichnis enthält zusätzliche Konfigurationsdateien und bietet Ihnen die Flexibilität zur Erweiterung und Anpassung Apache's Einstellungen.
  • conf-enabled/: In diesem Verzeichnis finden Sie symbolische Links zu den aktivierten Zusatzkonfigurationen aus dem Verzeichnis „conf-available/“. Es ermöglicht Ihnen, zusätzliche Konfigurationen zu integrieren, ohne die Hauptkonfigurationsdateien zu ändern.

Jetzt können wir die htaccess-Datei konfigurieren, die eine Überschreibungserweiterung für unsere aktuelle Konfiguration darstellt. Alle Änderungen und Werte dieser Datei wirken sich im Ergebnis auf die Konfiguration aus. Lassen Sie uns demonstrieren, wie das bei der normalen Konfiguration funktioniert.

Zuerst müssen Sie die Override-Funktion aktivieren und DocumentRoot in der Virtualhost-Konfiguration für diesen Eintrag angeben CLI:

mkdir /etc/site-for-test
nano /etc/apache2/sites-available/000-default.conf
Virtual host config
Screenshot Nr. 7 – Konfiguration des virtuellen Hosts

Pa ändernramGeben Sie „ServerName“ für Ihre Selbstdomäne und „AllowOverride“ für den Wert „All“ ein. Erinnerung! Sie müssen auf dem DNS Panel-Kontrolldatensatz, der die öffentliche IP Ihres Servers anzeigt! Ändern Sie DocumentRoot für Ihr Arbeitsverzeichnis mit Seiten und Dateien der benötigten Site. In diesem Fall erstellen wir ein Site-for-Test-Verzeichnis. Erstellen Sie als Nächstes Ihre erste einfache Seite. Wenn Sie Ihre eigene Website verwenden, überspringen Sie diesen Schritt:

nano /etc/site-for-test/index.html
Firts page
Screenshot Nr. 8 – Erste Seite
<! DOCTYPE html>
<html>
<head>
<title>TEST</title>
</head>
<body>
<h1>Hi, that test htaccess file!</h1>
</body>
</html>

Der Inhalt Ihrer Seite hat möglicherweise eine andere Konfiguration und Struktur, aber der Sinn wurde gewahrt. Lassen Sie uns im selben Ordner eine .htaccess-Datei erstellen, die eine Logikkette zwischen HTML und Benutzeraktion erstellt. Erstelle Datei:

nano /etc/site-for-test/.htaccess
RewriteEngine On
RewriteRule "hello$ index.html [L]
Override config
Screenshot Nr. 9 – Konfiguration überschreiben

Diese Konfiguration durch die Syntax RewriteEngine On Aktivieren Sie das Neuschreiben des Moduls auf dem Server und bei der nächsten unformatierten Neuaufbauregel, die buchstäblich mit der HTML-Seite und dem Attribut zugewiesen wird [L] bedeutet, dass die letzte Regel zum Ausführen und Befolgen von Anweisungen ignoriert wird. Für eine ordnungsgemäße Funktion müssen wir das Rewrite-Modul aktivieren, das Folgendes enthält: apache2 Paket- und Neustartdienst:

sudo a2enmod rewrite && systemctl restart apache2
Additional step
Screenshot Nr. 10 – Zusätzlicher Schritt

Lassen Sie uns das Ergebnis unserer Aktionen überprüfen:

Main page
Screenshot Nr. 11 – Hauptseite

Überprüfen Sie die URL unserer Website:

URL page
Screenshot Nr. 12 – URL-Seite

Zugriffskontrolle

Betrachten Sie ein beliebtes Beispiel für die Verwendung von .htaccess. Die .htaccess-Datei dient als leistungsstarkes Konfigurationstool, das den Zugriff auf die Dateien, Ordner und ganzen Verzeichnisse Ihrer Websites steuern kann!

Bestellung: Dieser Befehl bestimmt die Reihenfolge, in der Anweisungen ausgeführt werden. Es legt den Vorrang nachfolgender Anweisungen fest, unabhängig von ihrer Anordnung innerhalb der Datei.

Ablehnen: Mithilfe dieser Anweisung können Sie den Zugriff auf ein bestimmtes Verzeichnis von bestimmten Adressen oder IP-Adressen aus verbieten.

Erlauben: Umgekehrt erlaubt diese Direktive den Zugriff auf das Verzeichnis ausschließlich von den angegebenen Adressen bzw. IP-Adressen.

Mithilfe dieser Befehle können Sie den Zugriff auf bestimmte Ressourcen auf Ihrem Webserver ganz einfach anpassen. Sie können beispielsweise .htaccess verwenden, um den Zugriff auf vertrauliche Informationen innerhalb eines Designs einzuschränkennated-Ordner oder gewähren Sie ausschließlich Zugriff auf bestimmte IP-Adressen, wodurch die Sicherheit erhöht und die Kontrolle über die Ressourcen Ihrer Website ausgeübt wird. Öffnen Sie die zuvor erstellte .htaccess-Datei und geben Sie diese Konfiguration zusätzlich zur vorherigen Syntax ein.

Order allow,deny
Allow 95.141.86.46

Diese Konfiguration bestimmt den Prozesszugriff auf den Ordner auf dem Server und erlaubt daher den Zugriff ausschließlich für unsere IP. Sie müssen diesen Wert in Ihre Netzwerkadresse ändern! Im Ergebnis sehen wir die Markierung „Verboten“, sich von einer anderen IP-Adresse aus auf der Website anzumelden:

Forbidden
Screenshot Nr. 13 – Verboten

Indizes beschränken

Um die Sicherheit zu erhöhen, können Sie die Verzeichnisauflistung verhindern Apache Webserver. Wenn in einem Verzeichnis weder index.html noch eine angegebene Datei gefunden wird, Apache zeigt eine Liste aller in diesem Verzeichnis vorhandenen Dateien an. Um diese Funktion zu deaktivieren und die Verzeichnisliste einzuschränken, wenden Sie die folgende Konfiguration an:

Options -Indexes

Nicht gefunden – 404

Um Besucher auf eine 404-Seite (die Seite „Nicht gefunden“) umzuleiten, wenn die angeforderte Seite fehlt, können Sie den folgenden Code implementieren:

nano /etc/site-for-test/error404.html

Geben Sie folgenden Inhalt in die Datei ein:

<!DOCTYPE html>
<html>
<head>
<title>Page Not Found - 404 Error</title>
</head>
<h1>
<body>404 Page not found!</body>
</h1>
</html>

Dann zu einer Konfigurationsdatei .htaccess hinzufügen und fertig eingerichtet:

ErrorDocument 404 /error404.html
Not found
Screenshot Nr. 14 – Nicht gefunden

Redirection

Erstellen Sie eine HTML-Seite wie im vorherigen Schritt beschrieben und erstellen Sie die Zieldatei für die Umleitung:

nano /etc/site-for-test/targeturl.html

Um die Umleitung von „/hello“ nach „/target“ mit einer 301 (permanenten) Weiterleitung zu erreichen, können Sie die folgende RewriteRule in Ihrer .htaccess-Datei verwenden:

RewriteRule ^hello$ /target [R=301,L]
RewriteRule ^hello$ index.html
RewriteRule ^target$ targeturl.html

RewriteEngine Ein: Dies aktiviert die RewriteEngine und ermöglicht die Verwendung von Rewrite-Regeln in der .htaccess-Datei.

RewriteRule ^hello$ /target [R=301,L]: Diese Regel gleicht Anfragen mit „/hello“ ab (das „^“ bezeichnet den Anfang und „$“ bezeichnet das Ende der URL) und leitet sie an „/target“ weiter. mithilfe einer 301-Weiterleitung (permanent). Das Flag „R=301“ zeigt eine permanente Umleitung an und das Flag „L“ zeigt an, dass dies die letzte auszuführende Regel ist.

Bei dieser Konfiguration wird jede Anfrage an „/hello“ mit dem Statuscode 301 an „/target“ umgeleitet, was bedeutet, dass es sich um eine permanente Weiterleitung handelt. Andere Regeln, die nach dieser in der .htaccess-Datei vorhanden sind, werden aufgrund des „L“-Flags nicht ausgeführt.

Redirection
Screenshot Nr. 15 – Umleitung

Zusammenfassung

Die .htaccess-Datei ist ein leistungsstarkes Tool zur Steuerung des Zugriffs auf Ressourcen auf einem Webserver. Es bietet Webadministratoren die Möglichkeit, die Ausführungsreihenfolge von Anweisungen zu definieren, den Zugriff von bestimmten IP-Adressen oder Adressen mithilfe der „Deny“-Anweisung zu blockieren und mit der „Allow“-Anweisung den Zugriff nur auf bestimmte Orte zu gewähren. Dies bietet Administratoren die Flexibilität, die Zugriffskontrolle individuell anzupassen und so Sicherheit und präzise Kontrolle über Serverressourcen zu gewährleisten.

Darüber hinaus erfüllt die .htaccess-Datei noch andere wichtige Zwecke. Es kann Indizes verwalten, Verzeichnislisten verhindern und so die Sicherheit erhöhen, indem vertrauliche Dateien nicht offengelegt werden. Darüber hinaus kann es 404-Fehler (Nicht gefunden) verarbeiten, sodass Administratoren Besucher auf eine benutzerdefinierte Fehlerseite umleiten können, wenn eine angeforderte Seite fehlt oder nicht verfügbar ist.

Darüber hinaus ermöglicht die „RewriteRule“-Direktive in der .htaccess-Datei leistungsstarke Umleitungsfunktionen. Webadministratoren können diese Anweisung verwenden, um URL-Umleitungen durchzuführen und Besucher von einer URL zu einer anderen weiterzuleiten. Dies kann nützlich sein, um benutzerfreundliche URLs zu erstellen, dauerhafte oder temporäre Weiterleitungen zu implementieren oder Änderungen an der Website-Struktur zu verwalten.

Zusammenfassend ist die .htaccess-Datei ein vielseitiges und unverzichtbares Werkzeug für die Webserver-Konfiguration. Es bietet Kontrolle über Zugriff, Sicherheit, Fehlerbehandlung und URL-Umleitung und ist damit eine wesentliche Komponente für die Optimierung und Anpassung eines Webservers, um bestimmte Website- oder Anwendungsanforderungen zu erfüllen.

Abstimmung:
5 aus 5
Durchschnittliche Bewertung: 5
Bewertet von: 1
1101 CT Amsterdam Niederlande, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300

Das könnte dir auch gefallen ...

Wir verwenden Cookies, um Ihr Erlebnis auf der Website zu verbessern Serverspace besser. Indem Sie weiterhin auf unserer Website surfen, stimmen Sie unseren zu
Cookies und Datenschutzbestimmungen.