Alles was Du über die .htaccess-Datei wissen musst

Kategorie: Grundlagen

Die .htaccess-Datei hat großen Einfluss auf deine Website. In ihr lassen sich Servereinstellungen wie z.B. Zugriffsberechtigungen, Sperrungen, Weiterleitungen und Fehlermeldungen beeinflussen. In der Datei legst Du Regeln fest, die für das gesamte Verzeichnis gelten, in dem die Datei sich befindet. Ist sie im Hauptverzeichnis gespeichert, kannst Du hier Konfigurationen für Deine gesamte WordPress-Installation vornehmen.

Doch diese Möglichkeiten machen sie auch zu einem Sicherheitsrisiko, weshalb Du wissen solltest, wie Du sie vor ungewolltem Zugriff schützen kannst.

Sicher ist sicher: Nie ohne Backup arbeiten!

Um die .htaccess Datei bearbeiten zu können, benötigst Du ein FTP-Programm und einen Texteditor (alles Wichtige zu dem Thema findest Du in unserem FTP-Artikel).

Erstelle vor jeder Änderung in der .htaccess, die Du vornehmen willst, unbedingt ein aktuelles Backup der Datei. Da es sich um eine einfache Textdatei handelt, kannst Du diese ohne großen Aufwand mit Deinem FTP-Programm herunterladen und auf Deinem Rechner sichern. Kommt es durch die Änderung zu einem Fehler, kannst Du einfach das Backup wieder hochladen und damit die fehlerhafte Datei überschreiben.

Ohne diese Regel geht es nicht

Während Du viele Regeln selbst in die .htaccess einfügen kannst, muss eine Konfiguration unbedingt vorhanden sein, damit WordPress funktioniert. Sie sorgt dafür, dass Du in WordPress eigene Permalinks erstellen und ändern kannst.

Wenn Du also an Deiner .htaccess arbeitest, stelle sicher, dass diese Regel immer enthalten ist:

# BEGIN WordPress
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

Wenn Du weitere Code-Zeilen hinzufügen willst, tue dies vor # BEGIN WordPress oder nach # END WordPress. Achte darauf, wirklich nur den Code einzufügen, der notwendig ist. Denn eine zu große .htaccess geht immer auf Kosten Deiner Performance und verlangsamt Deine Seite.

Richtiger Schutz der .htaccess Datei

Da die .htaccess sehr großen Einfluss auf Deine Website hat, kannst Du sie entsprechend vor unbefugtem Zugriff schützen. Dafür stehen Dir verschiedene Wege zur Verfügung, die sich auch ergänzen.

Dateiberechtigung festlegen

Der wichtigste Schritt zum Schutz Deiner .htaccess-Datei ist die Festlegung der Dateiberechtigung. Dafür empfiehlt es sich die Zugriffsberechtigung auf 644 zu setzen. Um diese zu überprüfen oder zu ändern, loggst Du Dich mit Deinem FTP-Programm auf Deinem Webserver ein. Suche die .htaccess und machte einen Rechtsklick darauf. Unter „Dateiberechtigung“ oder "Informationen" kannst Du die aktuelle Einstellungen sehen und Änderungen vornehmen.

Alles was Du über die .htaccess-Datei wissen musst 1

Achtung: Falsch gesetzte Dateirechte der .htaccess können zu Fehlermeldungen beim Zugriff auf Deine Seite führen.

Zugriff von außen verhindern

Da die .htaccess Datei bei einem Seitenaufruf vom Server verarbeitet wird, muss die Datei von anderen nicht erreichbar sein. Mithilfe des richtigen Codes in der .htaccess kannst Du die Datei für Zugriffe von außen sperren. Füge dazu diese Codezeilen ein:

# Zugriff auf .htaccess verhindern

<files \~ "^.\*\.(\[hh]\[tt]\[aa])"="">
order allow,deny
deny from all
satisfy all
~</files>~

Sperre die Wp-config.php

Wenn Du schon dabei bist Deine WordPress Website abzusichern, dann kannst Du das auch gleich für die wp-config.php erledigen. Die Datei wp-config.php hat ebenfalls großen Einfluss auf Deine Seite. Sie enthält unter anderem Deine Datenbanken und Zugangsdaten. Über die .htaccess kannst Du einen zusätzlichen Schutz erstellen, um zu verhindern, dass Unbefugte sie einsehen und diese Informationen bekommen. Füge dafür diese Codezeile ein:

 # Zugriff auf wp-config.php verhindern

<files wp-config.php="">
order allow,deny
deny from all
~</files>~

Weiterleitungen einrichten

Es gibt verschiedene Wege um Weiterleitungen einzurichten. In vielen Fällen ist die Verwendung eines Plugins, wie wir es in unserem Artikel zu 404-Fehlerseiten beschreiben, die einfachere Variante. Umleitungen lassen sich allerdings auch direkt in der .htaccess Datei einstellen.

Wichtig: Die Einträge für Umleitungen sollten generell vor dem WordPress Eintrag in der .htaccess gespeichert sein, d.h. vor dem # BEGIN WordPress.

Falls von einem früheren Artikel auf einen neuen umgeleitet werden soll, ist dies durch den Redirect 301 Befehl möglich. Dahinter wird zunächst die alte URL aufgeführt gefolgt von einem Leerzeichen und dann die neue URL auf die weitergeleitet werden soll angegeben.

# Weiterleitungen

Redirect 301 /alterblogartikel http://neuerblog.de/blogartikel
Redirect 301 / http://neuewebsite.de/

Hiermit sind nur einzelne Umleitungen von einer einzelnen Seite auf eine andere möglich. Wenn du auf eine neue Domain umziehst und nicht für alle Unterseiten Deiner Website jeweils eine einzelne 301 Weiterleitung anlegen willst, kannst Du mit sogenannter RegEx-Syntax eine anderen Code nutzen:

RewriteEngine on
RewriteCond %{HTTP_HOST} ^deinealtedomain.de [OR]
RewriteCond %{HTTP_HOST} ^www.deinealtedomain.de
RewriteRule ^(.*)$ https://deineneuedomain.de/$1 [L,R=301]

Auf der Seite 301re.direct findet sich eine umfangreiche Erläuterung der verschiedenen Umleitungsmöglichkeiten in der .htaccess.


Dir hat der Artikel geholfen und du möchtest mit unseren WordPress Tipps, Tricks und Anleitungen auf dem Laufenden bleiben? Dann trag dich einfach in unseren kostenlosen Newsletter ein ...


Über den Autor

Nils Schulte am Hülse

Ich arbeite seit über 15 Jahren aktiv mit WordPress und gleichzeitig als Trainer für Präsentation und Kommunikation. Daher liegt mir das Thema verständliche Informationsvermittlung sehr am Herzen. Genau dieses Know How ist auch in den gemeinsam mit Frank erstellten WP ohne Stress Online Kurs eingeflossen.


Diese Beiträge könnten dir auch gefallen

Welchen WordPress Webhoster wählen?

Welchen WordPress Webhoster wählen?

WordPress: Vorteile und Nachteile

WordPress: Vorteile und Nachteile
{"email":"Email address invalid","url":"Website address invalid","required":"Required field missing"}
>