.htaccess-Dateien (oder „verteilte Konfigurationsdateien“) bieten eine Möglichkeit, die Konfiguration eines Verzeichnisses zu ändern, d. h. eine Datei mit einer oder mehreren Anweisungen in einem bestimmten Dokumentverzeichnis abzulegen, um dieses Verzeichnis und alle seine Unterverzeichnisse zu beeinflussen. Die verwendbaren Befehle sind eingeschränkt. Administratoren können sie über die AllowOverride-Direktive von Apache festlegen.
- Direktiven in Unterverzeichnissen überschreiben Direktiven in übergeordneten Verzeichnissen oder in der Hauptserverkonfigurationsdatei.
- .htaccess muss im ASCII-Modus hochgeladen werden, vorzugsweise mit den Berechtigungen 644.
Speicherort des Fehlerdokuments
Häufige Rückgabecodes für Client-Anfragefehler:
401-Autorisierung erforderlich
403 Verboten
404 Nicht gefunden
405 Methode nicht zulässig
408 Zeitüberschreitung bei Anforderung
411 Inhaltslänge erforderlich
412 Vorbedingung fehlgeschlagen
413 Anforderungsentität zu lang
414 Anforderungs-URI zu lang
415 Nicht unterstützter Medientyp
Häufige Rückgabecodes für Serverfehler:
500 Interner Serverfehler
Benutzer können .htaccess verwenden, um ihre eigene vorgefertigte Fehlererinnerungsseite anzugeben. Im Allgemeinen können Benutzer ein spezielles Verzeichnis einrichten, z. B. Fehler, um diese Seiten zu platzieren. Fügen Sie dann die folgenden Anweisungen zu .htaccess hinzu:
Fehlerdokument 404 /errors/notfound.html
FehlerDokument 500 /errors/internalerror.html
Eine Anweisung pro Zeile. Die Bedeutung der ersten Anweisung oben gilt für 404, d. h. wenn das erforderliche Dokument nicht gefunden wird, muss die Seite als Seite notfound.html im Verzeichnis /errors angezeigt werden. Es ist nicht schwer zu erkennen, dass das Syntaxformat wie folgt lautet:
ErrorDocument-Fehlercode/Verzeichnisname/Dateiname.Erweiterung
Wenn nur sehr wenige Informationen abgefragt werden müssen, ist es nicht erforderlich, eine spezielle Seite zu erstellen und die HTML-Nummer direkt im Befehl zu verwenden, wie im folgenden Beispiel:
FehlerDokument 401 "
Sie haben keine Berechtigung zum Zugriff auf diese Seite, bitte geben Sie auf!
"
Passwortschutz des Dokumentenzugriffs
Um mit .htaccess Zugangsbenutzer und entsprechende Passwörter für Dokumente in einem Verzeichnis festzulegen, muss zunächst ein .htpasswd-Textdokument generiert werden, zum Beispiel:
zheng:y4E7Ep8e7EYV
Das Passwort ist hier verschlüsselt, und Benutzer können einige Tools finden, um das Passwort in eine von .htaccess unterstützte Kodierung zu verschlüsseln. Es ist am besten, dieses Dokument nicht im WWW-Verzeichnis abzulegen. Es wird empfohlen, es außerhalb des WWW-Stammverzeichnisdokuments abzulegen, was sicherer ist.
Mit dem autorisierten Benutzerdokument können Sie die folgenden Anweisungen zu .htaccess hinzufügen:
Serververzeichnis für AuthUserFile .htpasswd
AuthGroupFile /dev/null (Verzeichnis, das autorisierten Zugriff erfordert)
AuthName EnterPassword
AuthType Basic (Autorisierungstyp)
require user wsabstract (Zugriffsberechtigte Benutzer; wenn Sie möchten, dass alle Benutzer in der Tabelle zugelassen werden, können Sie require valid-user verwenden)
Beachten Sie, dass es sich bei den Klammern um die Kommentare handelt, die Sie beim Lernen hinzugefügt haben.
Zugriff von einer IP verweigern
Wenn ich nicht möchte, dass eine bestimmte Regierungsbehörde auf den Inhalt meiner Website zugreift, kann ich sie ausschließen, indem ich die IP-Adresse der Behörde in .htaccess hinzufüge.
Zum Beispiel:
Befehl erlauben, verweigern
ab 210.10.56.32 ablehnen
ab 219.5.45 leugnen.
von allen zulassen
Die zweite Zeile verweigert eine bestimmte IP und die dritte Zeile verweigert einen bestimmten IP-Bereich, nämlich 219.5.45.0 ~ 219.2.45.255
Möchten Sie alle ablehnen? Verwenden Sie einfach deny from all. Zur Festlegung kann nicht nur die IP-Adresse, sondern auch der Domänenname verwendet werden.
Schützen Sie .htaccess-Dokumente
Wenn Sie .htaccess verwenden, um ein Verzeichnis mit einem Passwort zu schützen, enthält es den Pfad zur Passwortdatei. Aus Sicherheitsgründen ist es notwendig, .htaccess zu schützen, damit andere seinen Inhalt nicht sehen können. Dies kann jedoch auch auf andere Weise erfolgen, beispielsweise durch Berechtigungen für das Dokument. Allerdings kann .htaccess selbst dies auch tun, fügen Sie einfach die folgende Anweisung hinzu:
Befehl erlauben, verweigern
von allen leugnen
URL-Umleitung
Wir können die Website neu gestalten, Dokumente verschieben oder das Verzeichnis ändern. Zu diesem Zeitpunkt können Besuche von Suchmaschinen oder Links von anderen Websites fehlschlagen. In diesem Fall können Sie mit dem folgenden Befehl die alte URL automatisch auf die neue Adresse umleiten:
Leiten Sie /altes Verzeichnis/alte Dokumentnameadresse des neuen Dokuments um
Oder leiten Sie das gesamte Verzeichnis um:
Altes Verzeichnis in neues Verzeichnis umleiten
Ändern Sie die Standard-Homepage-Datei
Im Allgemeinen umfassen die Standardnamen der Homepage-Dateien „Default“, „Index“ usw. Manchmal gibt es jedoch keine Standarddatei im Verzeichnis, sondern einen bestimmten Dateinamen, wie zum Beispiel „pmwiki.php“ in „pmwiki“. In diesem Fall ist es für den Benutzer schwierig, sich den Dateinamen zu merken, um darauf zuzugreifen. Neue Standarddateinamen können einfach in .htaccess festgelegt werden:
DirectoryIndex neuer Standarddateiname
Es können auch mehrere Listen aufgelistet werden, wobei die Reihenfolge die Priorität zwischen ihnen angibt, zum Beispiel:
DirectoryIndex Dateiname.html index.cgi index.pl default.htm
Verhindern Sie Hotlinks
Wenn Sie nicht möchten, dass andere ihre eigenen Bilder und Dokumente auf ihren Webseiten verlinken, können Sie dies auch über den Befehl htaccess tun.
Die erforderlichen Anweisungen lauten wie folgt:
RewriteEngine aktiviert
RewriteCond% !^$
RewriteCond % !^http://(www.)?mydomain.com...*$ [NC]
RewriteRule .(gif|jpg)$ - [F]
Wenn Sie der Meinung sind, dass es nicht gut aussieht, auf der Seite einer anderen Person ein offenes Oberlicht zu haben, können Sie stattdessen ein Bild verwenden:
RewriteEngine aktiviert
RewriteCond% !^$
RewriteCond % !^http://(www.)?mydomain.com...*$ [NC]
RewriteRule .(gif|jpg)$ http://www.mydomain.com/replacement Bilddateiname [R,L]
Quelle:http://wsabstract.com/howt...