.htaccess kann eine Vielzahl von Dingen, darunter: Ordner mit einem Kennwort schützen, Benutzer automatisch umleiten, Fehlerseiten anpassen, Ihre Dateierweiterungen ändern, bestimmte Benutzer-IP-Adressen blockieren, nur bestimmte IP-Adressen zulassen, Verzeichnisauflistungen stoppen, andere Dateien als Indexdateien verwenden und mehr … 1. Einleitung Dateiname.htaccess Attribut 644 (RW-R–R–) htaccess wirkt sich auf alle Unterverzeichnisse unter dem Verzeichnis aus, in dem es sich befindet. Beachten Sie, dass der Großteil des Inhalts in einer Zeile stehen muss. Verwenden Sie keinen Zeilenumbruch, da dies sonst zu Fehlern führt. 2. Fehlerdokumente Offizielles Dokument: ErrorDocument Directive ErrorDocument-Codedokument Beispiel Fehlerdokument 400 /errors/badrequest.html Fehlerdokument 404 http://IhreSite/Fehler/nichtgefunden.html ErrorDocument 401 „Autorisierung erforderlich“ (Beachten Sie, dass alle im folgenden Inhalt vorkommenden Anführungszeichen mit \" maskiert werden müssen.) Allgemeine HTTP-Statuscodes Erfolgreiche Clientanfragen 200 OK 201 Erstellt 202 Akzeptiert 203 Nicht verbindliche Informationen 204 Kein Inhalt 205 Inhalt zurücksetzen 206 Teilweiser Inhalt Clientanforderung umgeleitet 300 Multiple-Choice-Fragen 301 Dauerhaft verschoben 302 Vorübergehend verschoben 303 Siehe Andere 304 Nicht geändert 305 Proxy verwenden Clientanforderungsfehler 400 Ungültige Anfrage 401 Autorisierung erforderlich 402 Zahlung erforderlich (noch nicht verwendet) 403 Verboten 404 Nicht gefunden 405 Methode nicht zulässig 406 Nicht akzeptabel (Kodierung) 407 Proxy-Authentifizierung erforderlich 408 Anforderung – Zeitüberschreitung 409 Widersprüchliche Anfrage 410 Weg 411 Inhaltslänge erforderlich 412 Vorbedingung fehlgeschlagen 413 Anforderungsentität zu lang 414 Anforderungs-URI zu lang 415 Nicht unterstützter Medientyp Serverfehler 500 Interner Serverfehler 501 Nicht implementiert 502 Ungültiges Gateway 503 Dienst nicht verfügbar 504 Gateway-Zeitüberschreitung 505 HTTP-Version nicht unterstützt 3. Passwortschutz Offizielles Dokument: Authentifizierung, Autorisierung und Zugriffskontrolle Angenommen, die Kennwortdatei ist .htpasswd AuthUserFile /usr/local/safedir/.htpasswd (hier muss der vollständige Pfadname verwendet werden) AuthName Passwort eingeben AuthType Basic Zwei gängige Überprüfungsmethoden: Benutzer Windix erforderlich (Nur der Benutzer Windix kann sich anmelden) Gültiger Benutzer erforderlich (Alle legitimen Benutzer können sich anmelden) Tipp: So generieren Sie eine Kennwortdatei mit dem Befehl htpasswd (in Apache integriert) Die erste Generation erfordert die Erstellung einer Passwortdatei htpasswd -c .htpasswd Benutzer1 Fügen Sie später neue Benutzer hinzu htpasswd .htpasswd Benutzer2 4. SSI über htaccess aktivieren AddType text/html .shtml Vom AddHandler-Server analysierte .shtml Optionen Indizes FollowSymLinks Includes VerzeichnisIndex index.shtml index.html 5. Benutzer nach IP blockieren Befehl erlauben, verweigern verweigern von 123.45.6.7 Verweigerung von 12.34.5. (die gesamte Klasse-C-Adresse) erlauben von allen 6. Blockieren von Benutzern/Sites nach Referrer Zum Blockieren von Benutzern/Sites nach Referrer ist das Modul mod_rewrite erforderlich. Beispiel 1. Blockieren eines einzelnen Referrers: badsite.com RewriteEngine ein # Optionen +FollowSymlinks RewriteCond %{HTTP_REFERER} badsite\.com [NC] RewriteRule .* – [F] Beispiel 2. Mehrere Referrer blockieren: badsite1.com, badsite2.com RewriteEngine ein # Optionen +FollowSymlinks RewriteCond %{HTTP_REFERER} badsite1\.com [NC,OR] RewriteCond %{HTTP_REFERER} badsite2\.com RewriteRule .* – [F] [NC] – Case-insensite [F] – 403 Verboten Beachten Sie, dass der obige Code die Anweisung „Options +FollowSymlinks“ auskommentiert. Wenn auf dem Server im Abschnitt httpd.conf keine FollowSymLinks festgelegt sind, müssen Sie diesen Satz hinzufügen, andernfalls erhalten Sie die Fehlermeldung „500 Internal Server error“. 7. Blockieren von Schadbots und Site-Rippern (auch bekannt als Offline-Browser). Zum Blockieren von Schadbots und Offline-Browsern ist das Modul „mod_rewrite“ erforderlich. Schadbots? Beispielsweise einige Bots, die Spam-E-Mail-Adressen abfangen, und Bots, die sich nicht an robots.txt halten (wie etwa Baidu?) Sie können basierend auf HTTP_USER_AGENT bestimmt werden (Aber es gibt noch schamlosere wie „zhongsou.com“, die ihren Agenten auf „Mozilla/4.0 (kompatibel; MSIE 5.5; Windows NT 5.0)“ einstellen. Das ist zu bösartig und wir können nichts dagegen tun.) RewriteEngine aktiviert RewriteCond %{HTTP_USER_AGENT} ^BlackWidow [ODER] RewriteCond %{HTTP_USER_AGENT} ^Bot\ mailto:[email protected] [ODER] RewriteCond %{HTTP_USER_AGENT} ^ChinaClaw [ODER] RewriteCond %{HTTP_USER_AGENT} ^Custo [ODER] RewriteCond %{HTTP_USER_AGENT} ^DISCo [ODER] RewriteCond %{HTTP_USER_AGENT} ^Download\ Demon [ODER] RewriteCond %{HTTP_USER_AGENT} ^eCatch [ODER] RewriteCond %{HTTP_USER_AGENT} ^EirGrabber [ODER] RewriteCond %{HTTP_USER_AGENT} ^EmailSiphon [ODER] RewriteCond %{HTTP_USER_AGENT} ^EmailWolf [ODER] RewriteCond %{HTTP_USER_AGENT} ^Express\ WebPictures [ODER] RewriteCond %{HTTP_USER_AGENT} ^ExtractorPro [ODER] RewriteCond %{HTTP_USER_AGENT} ^EyeNetIE [ODER] RewriteCond %{HTTP_USER_AGENT} ^FlashGet [ODER] RewriteCond %{HTTP_USER_AGENT} ^GetRight [ODER] RewriteCond %{HTTP_USER_AGENT} ^GetWeb! [ODER] RewriteCond %{HTTP_USER_AGENT} ^Go!Zilla [ODER] RewriteCond %{HTTP_USER_AGENT} ^Weiter, hab‘s verstanden [ODER] RewriteCond %{HTTP_USER_AGENT} ^GrabNet [ODER] RewriteCond %{HTTP_USER_AGENT} ^Grafula [ODER] RewriteCond %{HTTP_USER_AGENT} ^HMView [ODER] RewriteCond %{HTTP_USER_AGENT} HTTrack [NC, ODER] RewriteCond %{HTTP_USER_AGENT} ^Image\ Stripper [ODER] RewriteCond %{HTTP_USER_AGENT} ^Image\ Sucker [ODER] RewriteCond %{HTTP_USER_AGENT} Indy\ Bibliothek [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^InterGET [ODER] RewriteCond %{HTTP_USER_AGENT} ^Internet\ Ninja [ODER] RewriteCond %{HTTP_USER_AGENT} ^JetCar [ODER] RewriteCond %{HTTP_USER_AGENT} ^JOC\ Web\ Spider [ODER] RewriteCond %{HTTP_USER_AGENT} ^larbin [ODER] RewriteCond %{HTTP_USER_AGENT} ^LeechFTP [ODER] RewriteCond %{HTTP_USER_AGENT} ^Mass\ Downloader [ODER] RewriteCond %{HTTP_USER_AGENT} ^MIDown\ Tool [ODER] RewriteCond %{HTTP_USER_AGENT} ^Mister\ PiX [ODER] RewriteCond %{HTTP_USER_AGENT} ^Navroad [ODER] RewriteCond %{HTTP_USER_AGENT} ^NearSite [ODER] RewriteCond %{HTTP_USER_AGENT} ^NetAnts [ODER] RewriteCond %{HTTP_USER_AGENT} ^NetSpider [ODER] RewriteCond %{HTTP_USER_AGENT} ^Net\ Vampire [ODER] RewriteCond %{HTTP_USER_AGENT} ^NetZIP [ODER] RewriteCond %{HTTP_USER_AGENT} ^Octopus [ODER] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Explorer [ODER] RewriteCond %{HTTP_USER_AGENT} ^Offline\ Navigator [ODER] RewriteCond %{HTTP_USER_AGENT} ^PageGrabber [ODER] RewriteCond %{HTTP_USER_AGENT} ^Papa\ Foto [ODER] RewriteCond %{HTTP_USER_AGENT} ^pavuk [ODER] RewriteCond %{HTTP_USER_AGENT} ^pcBrowser [ODER] RewriteCond %{HTTP_USER_AGENT} ^RealDownload [ODER] RewriteCond %{HTTP_USER_AGENT} ^ReGet [ODER] RewriteCond %{HTTP_USER_AGENT} ^SiteSnagger [ODER] RewriteCond %{HTTP_USER_AGENT} ^SmartDownload [ODER] RewriteCond %{HTTP_USER_AGENT} ^SuperBot [ODER] RewriteCond %{HTTP_USER_AGENT} ^SuperHTTP [ODER] RewriteCond %{HTTP_USER_AGENT} ^Surfbot [ODER] RewriteCond %{HTTP_USER_AGENT} ^tAkeOut [ODER] RewriteCond %{HTTP_USER_AGENT} ^Teleport\ Pro [ODER] RewriteCond %{HTTP_USER_AGENT} ^VoidEYE [ODER] RewriteCond %{HTTP_USER_AGENT} ^Web\ Image\ Collector [ODER] RewriteCond %{HTTP_USER_AGENT} ^Web\ Sucker [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebAuto [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebCopier [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebFetch [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebGo\ IST [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebLeacher [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebReaper [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebSauger [ODER] RewriteCond %{HTTP_USER_AGENT} ^Website\ eXtractor [ODER] RewriteCond %{HTTP_USER_AGENT} ^Website\ Suche [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebStripper [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebWhacker [ODER] RewriteCond %{HTTP_USER_AGENT} ^WebZIP [ODER] RewriteCond %{HTTP_USER_AGENT} ^Wget [ODER] RewriteCond %{HTTP_USER_AGENT} ^Widow [ODER] RewriteCond %{HTTP_USER_AGENT} ^WWWOFFLE [ODER] RewriteCond %{HTTP_USER_AGENT} ^Xaldon\ WebSpider [ODER] RewriteCond %{HTTP_USER_AGENT} ^Zeus RewriteRule ^.* – [F,L] [F] – 403 Verboten [L] – Verbindung 8. Ändern Sie Ihre Standardverzeichnisseite VerzeichnisIndex index.html index.php index.cgi index.pl 9. Weiterleitungen zu einer einzelnen Datei Weiterleitung /altes_Verzeichnis/alte_Datei.html http://yoursite.com/neues_Verzeichnis/neue_Datei.html Gesamtes Verzeichnis Weiterleitung /altes_Verzeichnis http://yoursite.com/neues_Verzeichnis Wirkung: Wie beim Verschieben des Verzeichnisses http://yoursite.com/altes_Verzeichnis -> http://yoursite.com/neues_Verzeichnis http://yoursite.com/altes_Verzeichnis/dir1/test.html -> http://yoursite.com/neues_Verzeichnis/dir1/test.html Tipp: Lösung für die Umleitung, die bei Verwendung eines Benutzerverzeichnisses nicht funktioniert: Wenn Sie das Standardbenutzerverzeichnis von Apache verwenden, z. B. http://mysite.com/~windix, und Sie zu http://mysite.com/~windix/jump umleiten möchten, werden Sie feststellen, dass die folgende Umleitung nicht funktioniert: Weiterleitung /Jump http://www.google.com Der richtige Weg ist, sich zu ändern Weiterleitung /~windix/jump http://www.google.com (Quelle: .htaccess-Weiterleitung in „Sites“ leitet nicht weiter: Warum? ) 10. Verhindern Sie die Anzeige der .htaccess-Datei Befehl erlauben, verweigern leugnen von allen 11. MIME-Typen hinzufügen AddType-Anwendung/x-shockwave-flash swf Tipps: Stellen Sie den Typ auf application/octet-stream ein, um den Download zu beschleunigen 12. Verhindern des Hotlinking von Bildern und anderen Dateitypen Anti-Hotlinking erfordert das Modul mod_rewrite RewriteEngine ein RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www/\.)?meinedomain.com/.*$ [NC] RewriteRule \.(gif|jpg|js|css)$ – [F] Analyse: Wenn HTTP_REFERER nicht leer ist (die Quelle ist eine andere Site, keine direkte Verbindung) und wenn HTTP_REFERER nicht mit (www.)mydomain.com beginnt (Groß-/Kleinschreibung ignorieren [NC]) (die Quelle ist nicht diese Site) Gibt den Fehler 403 Forbidden für alle Dateien aus, die mit .gif/.jpg/.js/.css enden [F] Sie können auch eine Antwort angeben, wie im folgenden Beispiel gezeigt: Regel neu schreiben \.(gif|jpg)$ [R,L] [R] – Weiterleitung [L] – Verbindung 13. Verhindern der Verzeichniseintragung IndexIgnorieren * IndexIgnorieren *.jpg *.gif Tipps: Verzeichnisliste zulassen: Optionen + Indizes Verzeichnisliste deaktivieren: Optionen - Indizes Eingabeaufforderungsinformationen anzeigen: HEAD-Datei, README-Datei |
<<: inmotionhosting Host-Einführung
>>: ixwebhosting dedizierte IP und gemeinsam genutzte IP-Umschaltung
AlexHost, ein moldawischer Hosting-Anbieter, wurd...
Ich habe eine E-Mail erhalten, dass Virpus das Re...
BandwagonHost ist ein im September 2012 gegründet...
Einführung SSD VPS ist ein 2013 gegründetes ameri...
WooServers wurde bereits vorgestellt und das Folg...
Der bereits vorgestellte drserver ist ein stabile...
Sweden Dedicated, ein alteingesessener schwedisch...
OneBestHost ist ein 2012 gegründetes kanadisches ...
Details : JustHost: 11 Yuan/Monat/512 MB Speicher...
BeerVM, ein chinesischer Händler, bietet hauptsäc...
Siyun Data, ein chinesischer Händler, bietet haup...
micros.uz, ein altes Unternehmen in Usbekistan, w...
Details zum dedizierten Server von WholesaleInter...
Nach Aibas Verständnis sind Baidu-Gewicht und Goo...
HostSlayer, ein 2016 gegründeter amerikanischer H...