Was ist eine htaccess-Datei?
Die .htaccess Datei in Apache ist ein Tool, das Konfigurationen auf Verzeichnis- und Unterverzeichnisebene ermöglicht. Mit .htaccess ermöglicht es Ihnen, Website-Berechtigungen zu konfigurieren, ohne die Serverkonfigurationsdateien zu ändern.
Dieses Tutorial zeigt Ihnen, wie Sie htaccess einrichten und aktivieren auf Apache. Außerdem wird beschrieben, wie Sie den Zugriff auf bestimmte Lokalisierungen auf dem Server einschränken, IP-Adressen verwalten und Datenverkehr umleiten können.
Voraussetzungen
- Ein funktionierender Apache-Webserver
- Zugriff auf ein Terminalfenster/eine Befehlszeile
- Zugriff auf ein Benutzerkonto mit sudo-Berechtigungen
- Ein Texteditor wie N ano , standardmäßig enthalten
Schritt 1:Apache .htaccess aktivieren
Standardmäßig ist die .htaccess Datei ist nicht aktiviert.
1. Öffnen Sie die Standard-Host-Konfigurationsdatei, indem Sie im Terminal den folgenden Befehl eingeben:
sudo nano /etc/apache2/sites-available/default
2. Suchen Sie den Abschnitt mit der Bezeichnung
Ändern Sie in diesem Abschnitt AllowOverride None
Eintrag für alle:
AllowOverride All
Datei speichern und beenden.
3. Als nächstes neu starten der Apache-Dienst:
sudo systemctl apache2 restart
Schritt 2:.htaccess-Datei erstellen
Wie die meisten Linux-Softwarepakete arbeitet Apache mit Konfigurationsdateien. Die .htaccess Datei ist eine davon. Es funktioniert, indem eine Einstellung zusammen mit einem Wert angegeben wird.
So erstellen und öffnen Sie die .htaccess Datei zum Bearbeiten, geben Sie ein:
sudo nano /var/www/my_website.com/.htaccess
Ersetzen Sie meine_website mit dem Namen Ihrer eigentlichen Website. Wenn diese Datei nicht existiert, wird sie von Ihrem Texteditor erstellt.
Schritt 3:Verzeichniseinträge einschränken
Möglicherweise gibt es Orte auf Ihrem Server, auf die Sie den Zugriff beschränken möchten. Sie können dies tun, indem Sie eine Liste mit Benutzernamen und Passwörtern erstellen, die berechtigt sind, Zugriff zu haben.
1. Erstellen Sie zunächst eine neue Datei, .htpasswd in einem anderen Verzeichnis:
sudo nano /user/safe_location/.htpasswd
Geben Sie für jeden Benutzer, den Sie erstellen möchten, einen Benutzernamen und ein Kennwort ein. Achten Sie darauf, starke Passwörter zu verwenden , und geben Sie nur ein Benutzername/Passwort-Paar pro Zeile ein.
Speichern Sie die Datei und beenden Sie sie.
2. Bearbeiten Sie als Nächstes .htaccess, um Authentifizierung zu aktivieren :
AuthUserFile /user/safe_location/.htpasswd
AuthGroupFile /dev/null
AuthName "Please Enter Password"
AuthType Basic
Require valid-user
Ersetzen Sie /user/safe_location/htpasswd mit dem Standort Ihrer Wahl. Speichern Sie es aus Sicherheitsgründen nicht im selben Verzeichnis wie Ihre Webinhalte.
AuthUserFile
- Dies legt den Speicherort für Ihre .htpasswd-Datei fest.
AuthGroupFile
- Wir verwenden keine Gruppe, also ist dies ein Platzhalter.
AuthName
- Dies ist die Eingabeaufforderung an den Benutzer – Sie können sie umformulieren, wenn Sie möchten.
AuthType
- Art der verwendeten Authentifizierung – nicht ändern.
Require valid-user
– Erlaubt jedem von mehreren berechtigten Personen sich anzumelden. Sie können dies in Benutzer new_user anfordern ändern um den Zugriff nur auf jemanden mit dem Benutzernamen neuer_Benutzer zu beschränken .
IP-Adressen verwalten
Es gibt viele Möglichkeiten, IP-Adressen zu verwalten:
- Nur bestimmte IPs zulassen.
- Blockieren Sie bestimmte IP-Adressen.
- Besucher durch den Referrer blockieren.
IP-Adressen zulassen
Um IP-Adressen zuzulassen, können Sie das Verhalten ändern, um einige bestimmte IP-Adressen zuzulassen und den Rest zu blockieren.
Geben Sie die Befehle ein:
order deny, allow
allow from 192.168.0.54
allow from 192.168.0
IP-Adressen blockieren
Um IP-Adressen in htaccess zu blockieren , geben Sie Folgendes ein:order allow, deny
Um eine einzelne IP-Adresse zu blockieren, geben Sie als Nächstes diesen Code ein:deny from 192.168.0.54
Wenn Sie die letzte Ziffer weglassen, werden alle IP-Adressen im Bereich von 0 bis 255 blockiert:
Zum Beispiel:deny from 192.168.0
Besucher nach Referrer blockieren
Möglicherweise möchten Sie verhindern, dass Personen von einer bestimmten Website auf Ihren Server umgeleitet werden. Dies kann hilfreich sein, wenn Sie Verkehrsmuster isolieren möchten. Sie können es auch verwenden, wenn Sie übermäßigen Serververkehr aus einer fragwürdigen Quelle erhalten.
Öffnen Sie die .htaccess Datei und fügen Sie den folgenden Block hinzu:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} blockeddomain\.com [NC]
RewriteRule .* - [F]
Der NC
Option weist an, Groß- oder Kleinschreibung zu ignorieren, damit die Regel nicht durch Eingabe von BlockedDomain.com umgangen werden kann .
Wenn Sie weitere Domänen hinzufügen möchten, beachten Sie Folgendes:
RewriteEngine on
# Options +FollowSymlinks
RewriteCond %{HTTP_REFERER} blockeddomain\.com [NC,OR]
RewriteCond %{HTTP_REFERER} blockeddomain2\.com
RewriteRule .* - [F]
Das OR
Flag teilt dem System mit, dass Sie mit dem Hinzufügen blockierter Referrer noch nicht fertig sind. Lassen Sie diese Option beim letzten Eintrag weg.
Verkehr umleiten
Sie können die .htaccess verwenden Datei, um den Datenverkehr umzuleiten.
Öffnen Sie die Datei und geben Sie Folgendes ein:
Redirect301/Other_Website.com/index.html/My_Website.com/index.html
Dieser Befehl nimmt jeden Datenverkehr entgegen, der nach Other_Website.com sucht und leitet sie zu My_Website.com weiter .
Legen Sie eine 404-Seite fest
Sie können die .htaccess verwenden Datei, um grundlegende Funktionen auf einen neuen Speicherort zu verweisen. Ein Beispiel ist die 404-Seite .
1. Öffnen Sie die .htaccess Datei und geben Sie ein:
ErrorDocument 404 /404.html
Diese Zeile weist das System an, im Inhaltsverzeichnis der Website nach einer /404.html zu suchen Datei als Fehlerseite.
2. Erstellen Sie die 404-Seite mit diesem Befehl:
sudo nano cd /var/www/My_Website.com/public.html/404.html
Dies sollte die 404.htm öffnen l-Datei in Ihrem Texteditor.
3. Fügen Sie als Nächstes den folgenden Code hinzu:
<!doctype html>
<html>
<body>
404 Error: Page not found
</body>
</html>
Diese Seite kann jetzt angepasst werden, um jede Art von Fehlermeldung anzuzeigen, die Sie möchten. Sie können auch andere Fehlerseiten nach Ihren Wünschen anpassen. Geben Sie einfach das ErrorDocument an Nummer, zum Beispiel Fehler 500 als Punkt .htaccess in die neue error.html Datei, die Sie erstellen.