header-xh-01 header-xh-02 header-xh-03 header-xh-04 header-xh-05 header-xh-06 header-xh-07 header-xh-08 header-xh-09 header-xh-10 header-xh-11 header-xh-12 header-xh-13 header-xh-14
Lembach's nichtkommerzielle Website rund um CMSimple_XH
Templates, Plugins, Tools, Programme
und Tips und Tricks die mir wichtig sind
Sie sind hier: Startseite > Tipps und Tricks zusammengetragen > Elemente einer .htaccess - Datei

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:

  1. als Nachschlage-Notiz für mich selbst, damit ich nicht immer aufs neue im Netz suchen muss
  2. 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 page
DirectoryIndex index.php

Eintrag zur Festlegung der Standard-Kontakt-E-Mailadresse

# Default contact email
SetEnv 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 download
AddType application/octet-stream  .zip

Eintrag zur Festlegung das Standard-Zeichensatz

# Default charset
AddDefaultCharset UTF-8

Eintrag zur Verhinderung der Verzeichnis-Navigation

# Prevent directory navigation
Options 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} off
RewriteRule ^ 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 version
RewriteCond %{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/

Hilfe zu regexe

 


| Seitenanfang |