Elemente einer .htaccess - Datei
Hinweis: Diese Seite erhebt keinesfalls den Anspruch eigener geistigen Schöpfung!
Sie ist lediglich aus zwei eigennützigen Gründen entstanden:
- als Nachschlage-Notiz für mich selbst, damit ich nicht immer aufs neue im Netz suchen muss
- man kann es sich besser merken, wenn man zu einem Thema eine Seite erstellt hat.
Die für mich (aus meiner Sicht) am wichtigsten HTTP-Status-Codes habe ich dort zusammengestellt (Auszug aus Wikipedia).
In einer .htaccess - Datei können Kommentare zur Erläuterung der Einträge sehr hilfreich sein (wenn man später etwas ändern will). Kommentarzeilen fangen mit einem # an.
Ich habe diesen Online-Generator für .htaccess - Dateien ausprobiert und dabei u.a. folgende Elemente erhalten:
Einträge für eigene Fehlerseiten
Eintrag zur Festlegung der Standard-Datei, wenn in der URL keine festgelegt ist
# Default pageDirectoryIndex index.php
Eintrag zur Festlegung der Standard-Kontakt-E-Mailadresse
# Default contact emailSetEnv SERVER_ADMIN webmaster@domain.tld
Man sollte sich darüber im Klaren sein, dass diese E-Mailadresse für jeden Spyder und Spambot komplett unverschlüsselt lesbar ist. Diese Festlegung überhaupt zu treffen stammt also noch aus einer Zeit, als es im Internet noch nett zuging (keine bösen Buben unterwegs waren).
Eintrag zur Festlegung der Dateitypen, die automatisch zum Download führen
# Force downloadAddType application/octet-stream .zip
Eintrag zur Festlegung das Standard-Zeichensatz
# Default charsetAddDefaultCharset UTF-8
Eintrag zur Verhinderung der Verzeichnis-Navigation
# Prevent directory navigationOptions All -Indexes
Eintrag für Umleitung http://url zu https://url
Voraussetzung ist zum einen, dass die Website wirklich über https zu erreichen ist und zum anderen die RewriteEngine aktiv ist.
<IfModule mod_rewrite.c>
RewriteEngine On# Redirect to SSL version# ACHTUNG: Wenn die Domains kein HTTPS unterstützen, müssen die beiden folgenden Zeilen auskommentiert werden!!!RewriteCond %{HTTPS} offRewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI}
</IfModule>
Eintrag für Umleitung von www.url zu URL ohne www
Voraussetzung ist das aktivieren der RewriteEngine
<IfModule mod_rewrite.c>
RewriteEngine On# Redirect to non www versionRewriteCond %{HTTP_HOST} ^www.(.*)$ [NC]RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
</IfModule>
bezüglich "Regulärer Ausdrücke" siehe Link unten
Eintrag, der SPAM Bots abwehren soll
# Mod Rewrite<IfModule mod_rewrite.c> RewriteEngine On Options +FollowSymlinks RewriteBase / #Block Spam Bots RewriteCond %{HTTP_USER_AGENT} ^(aesop_com_spiderman|alexibot|backweb|bandit|batchftp|bigfoot) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(black.?hole|blackwidow|blowfish|botalot|buddy|builtbottough|bullseye) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(cheesebot|cherrypicker|chinaclaw|collector|copier|copyrightcheck) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(cosmos|crescent|curl|custo|da|diibot|disco|dittospyder|dragonfly) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(drip|easydl|ebingbong|ecatch|eirgrabber|emailcollector|emailsiphon) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(emailwolf|erocrawler|exabot|eyenetie|filehound|flashget|flunky) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(frontpage|getright|getweb|go.?zilla|go-ahead-got-it|gotit|grabnet) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(grafula|harvest|hloader|hmview|httplib|httrack|humanlinks|ilsebot) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(infonavirobot|infotekies|intelliseek|interget|iria|jennybot|jetcar) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^(joc|justview|jyxobot|kenjin|keyword|larbin|leechftp|lexibot|lftp|libweb) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^web(zip|emaile|enhancer|fetch|go.?is|auto|bandit|clip|copier|master|reaper|sauger|site.?quester|whack) [NC,OR] RewriteCond %{HTTP_USER_AGENT} ^.*(craftbot|download|extract|stripper|sucker|ninja|clshttp|webspider|leacher|collector|grabber|webpictures).*$ [NC] RewriteRule . - [F,L]</IfModule>Hier wurde ich auf die folgende verlinkte Seite aufmerksam gemacht. Danke Olaf!
Reguläre Ausdrücke - Tutorial (2006-03-20) - Daniel FETT
"Reguläre Ausdrücke" sind eine Art Sprache, die beim Programmieren für diverse Problemlösungen verwendet werden kann, insbesondere dann, wenn es darum geht, Zeichenketten (Strings) zu bearbeiten, zu prüfen oder in ihnen etwas zu suchen.
Und weil der Name "Reguläre Ausdrücke" etwas unhandlich ist, heißen die "Regular Expressions" auch oft einfach nur "RegEx(en)".
https://danielfett.de/2006/03/20/regulaere-ausdruecke-tutorial/
Wikipedia -> Regulärer Ausdruck
ahkde.github.io -> Reguläre Ausdrücke (RegEx) - Kurzübersicht
regexe - Reguläre Ausdrücke online testen
Mit diesem Programm können Sie reguläre Ausdrücke (engl. regular expressions, regexp, regex) , zum Beispiel für Java oder Perl, direkt online auswerten lassen und somit interaktiv testen. Um das Programm zu benutzen, füllen Sie dazu einfach die vorgesehen Felder aus und klicken dann auf "Los geht's".
http://www.regexe.de/


