.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
1. Ändern Sie den letzten Satz des Benutzernamens...
LetBox, ein amerikanisches Hosting-Unternehmen, w...
Daring Host ist ein 2010 gegründetes amerikanisch...
Neu eingetroffen! Drei Netzwerke von Taipei PQS-N...
Veranstaltungsseite: https://hello.cloudcone.com/...
RoboVPS, ein russischer Hosting-Anbieter unter ru...
CUBECLOUD wurde 2016 gegründet und ist Mitglied d...
ION ist eine neue Untermarke des alten Händlers K...
90VM, ein chinesisches Unternehmen, besteht berei...
CloudCone ist ein relativ aktiver Hosting-Anbiete...
Früher war es ein Tutorial zum Mounten von Vagex ...
Es gibt immer noch Produkte zum Double 11-Sonderp...
1blu, ein deutsches Hosting-Unternehmen, bietet e...
nhdHost, ein ausländischer Händler, bietet haupts...
Virmach, jetzt wurden alle OVZ VPS auf KVM VPS um...