Die .Htaccess-Datei In WordPress

.htaccess
4. Januar 2023

Was .htaccess macht, wo du .htaccess findest und wie es funktioniert

Mit Hilfe von .htaccess kannst du auf einem Webserver Regeln für die Verarbeitung von HTTP-Anfragen festlegen. Die Datei wird normalerweise im Stammverzeichnis der Webseite gespeichert. Als Admin einer Webseite ist es wichtig, eine solche .htaccess Datei zu besitzen oder zu verwenden.


Die Integration von .htaccess ist allerdings recht komplex, weswegen sich meist Entwickler um diesen Teil deiner Webseite kümmern. Sofern du also bisher kein .htaccess besitzt oder die Datei gelöscht hast, erklären wir dir Schritt für Schritt, wie du die .htaccess-Datei einrichten kannst und worauf du im Umgang mit .htaccess unbedingt achten musst.

1. WordPress .htaccess - was ist das überhaupt?

Eine .htaccess-Datei ist eine textbasierte Konfigurationsdatei, mit der sich Programme umkonfigurieren lassen. Im Falle von WordPress lässt sich durch das Bearbeiten der Datei das System sicherer und auch schneller machen. Es lohnt sich daher, sich mit dem Thema .htaccess auseinanderzusetzen.


Generell kannst du über die Datei bspw.:


  • spezielle Regeln hinzufügen
  • automatische Weiterleitungen einrichten
  • von http auf https umleiten
  • Zugriff von bestimmten IP-Adressen sperren oder einschränken
  • die maximale Upload-Größe erhöhen
  • und vieles, vieles mehr
was ist .htaccess

2. Wo finde ich die WordPress .htaccess-Datei?

Mit einem FTP-Programm erhalten Nutzer Zugang zur .htaccess-Datei. Sie liegt im Root-Verzeichnis von WordPress, bei dem es sich um das Hauptverzeichnis handelt.


Verwendest du einen Apache-Server, dann liegt die .htaccess-Datei dort, wo auch:


  • der Ordner wp-admin
  • der Ordner wp-content
  • und die Datei wp-config.php

TIPP 💡


Wenn auf dem Server noch keine .htaccess liegt, einfach mal die Permalinks neu speichern (ohne Änderung), dann wird die oft Datei angelegt. Es hängt aber davon ab, ob das automatisierte Erstellen von Dateien erlaubt wurde. In diesem Fall erhalten Nutzer jedoch beim Speichern der Permalinks eine Fehlermeldung von WordPress, die darauf hinweist, dass keine .htaccess-Datei erstellt werden konnte.


liegen. WordPress erstellt die Datei in der Regel selbst, wenn du in den WordPress-Einstellungen die Permalink-Struktur festlegst. 
.htaccess im Plesk finden

3. Wie richte ich .htaccess für WordPress ein?

Das manuelle Erstellen der Datei ist relativ technisch, aber mit der passenden Anleitung in nur vier kurzen Schritten erledigt. So musst du vorgehen:


  1. Für den ersten Schritt benötigen Nutzer einen Texteditor, der für die Bearbeitung von Dateien dieser Art ausgelegt ist. Microsoft Word funktioniert beispielsweise nicht, da hier weitere Formatierungen hinzugefügt werden. Der Nutzer erstellt nun eine Datei mit dem Namen a.htaccess (beliebiger Name, der nicht nur “htaccess” lautet).
  2. Die leere Datei wird nun via FTP-Programm im eigenen Hauptverzeichnis hochgeladen. Der Nutzer befindet sich im Hauptverzeichnis, wenn dort auch die wp-config.php liegt.
  3. Da die Datei noch einen falschen Namen hat, muss sie in die korrekte Form umbenannt werden: .htaccess
  4. Der vierte und letzte Schritt bezieht sich auf die Rechtezuweisung. Die Datei ist aktuell leer und muss nun mit Code gefüllt werden. Es gibt eine Art “Standard-Format”, welches Nutzer zu Beginn einfügen können. Dieser sieht wie folgt aus:

# BEGIN WordPress


RewriteEngine On

RewriteBase /

RewriteRule ^index\.php$ – [L]

RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule . /index.php [L]

# END WordPress

Unser Entwickler Alex erklärt dir wie es geht.
Mit diesem Code funktioniert die Datei standardmäßig. Es kann allerdings sein, dass beispielsweise bestimmte Plugins einen Zugang benötigen. In diesem Fall musst du erst die passenden Rechte korrekt zuweisen. Das geht so:


    1. Über das FTP-Programm die .htaccess-Datei aufrufen
    2. Mit der rechten Maustaste auf die Datei klicken
    3. Dateiberechtigungen als Punkt auswählen
    4. Beschreiben der Datei wie gewünscht zulassen

4. Kann ich die .htaccess-Datei verändern?

Um sowohl die Performance als auch die Leistung der eigenen WordPress-Seite zu optimieren, ist die .htaccess-Datei sehr wichtig. Die Bearbeitung ist an sich sehr einfach, aber leider erhöht das auch das Fehlerpotenzial. 

In einigen Fällen kann es sein, dass WordPress selbst auf die .htaccess-Datei zugreift und eigenständige Änderungen durchführt (Hier findest du unseren passenden FAQ-Artikel im Help-Center). Das ist je nach Einstellung der Fall und kann Probleme auslösen.


Wenn ein Nutzer über WordPress selbst Optimierungen vornimmt, bearbeitet das System die Datei. Es setzt beispielsweise Hinweise wie # BEGIN WordPress und # END WordPress. Für jeden, der unnötigen Code in seiner Datei vermeiden möchte, ist das ein Graus.


Der Hintergrund: Selbst, wenn der Nutzer die nicht gewünschten Zeilen entfernt, fügt WordPress sie eigenständig wieder ein. Das gilt auch für den Bereich dazwischen. Wenn dieser eigenhändig und oft mit viel Mühe optimiert wurde, WordPress dann aber eigenständig Änderungen vornimmt, kann das sehr ärgerlich sein.

5. Wie entziehe ich WordPress den .htacces-Zugang?

Um das Problem zu vermeiden, können WordPress-Nutzer dem System den Dateizugang entziehen. Hierfür bieten sich verschiedene Lösungsansätze an.
  1. In der ersten Variante können die Zugriffsrechte für WordPress komplett eingeschränkt werden. Das ist simpel und effektiv, aber leider bedeutet das auch, dass WordPress auch Einschränkungen im Bereich Themes und Plugins hat. Diese Lösung ist daher nicht immer optimal.
  2. Bei der zweiten Option handelt es sich um einen Filter, der in die functions.php (zu finden im Ordner „/wp-content/themes/(aktives Theme)/“) eingebaut wird. Auf diese Weise kann WordPress die in der htaccess-Datei enthaltenen Regeln nicht überschreiben oder stets verändern.


‼️ Achtung


Bevor Änderungen an den Dateien vorgenommen werden, solltest du immer (!) ein Backup machen. Das gilt sowohl für die genannte functions.php, als auch für Veränderungen an der .htaccess-Datei von WordPress. Ein Backup ist sehr einfach, da die Datei einfach kopiert und umbenannt werden kann.


Hierfür musst du die folgende Zeile in die functions.php einfügen:

add_filter('flush_rewrite_rules_hard', '__return_false');

6. Redirects mit .htaccess einrichten

Wenn du den bereitgestellten Code an den Anfang der .htaccess einfügst, kannst du bspw. diese Einstellungen übernehmen:


Redirect von einer Seite auf eine andere Seite / Aktualisierung einer URL:


Bspw. wenn man die URL eines bestehenden Beitrags oder einer LP erneuert.


  • Redirect   /alte-seite.html   https://www.domain.de/verzeichnis/neue-seite.html

Dateiendung ändern:


Wenn du bspw. dauerhaft Dateiendungen von .html auf .php ändern möchtest


  • RedirectMatch   301   (.*)\.html$   http://www.domain.de$1.php

Redirect von www auf non-www:


So gelingt der Redirect von http://www.domain.de auf http://domain.de:


  • RewriteEngine   On

    RewriteCond   %{HTTP_HOST}   ^www\.domain\.de$   [NC]

    RewriteRule   ^(.*)$   http://domain.de/$1   [L,R=301]

Redirect von non-www auf www:


Und noch einmal in die andere Richtung – Redirect von http://domain.de auf http://www.domain.de:


  • RewriteEngine On

    RewriteCond   %{HTTP_HOST}   !^www\.domain\.de$   [NC]

    RewriteRule   ^(.*)$   http://www.domain.de/$1   [L,R=301]

Für gewöhnlich wird dergleichen heutzutage jedoch über Serververwaltungs-Plattformen gelöst. So schaut es bspw. in unserer Oberfläche von Plesk aus, wenn man zwischen www und non-www Varianten wechseln möchte.

Bei .htaccess – www-to-non-www-via-plesk
‼️ Vorsicht ist geboten, wenn du solche Änderungen zusätzlich manuell durchführst. Da kann es beispielsweise zum „too many redirects“-Error kommen, weil du eine Schleife im Code erzeugt hast.

7. Die .htaccess-Datei nach der Einrichtung optimieren

Sobald die Datei eingerichtet wurde, kann sie von den Nutzern optimiert werden. Dabei kommt es natürlich ganz auf die individuellen Bedürfnisse an. Es ist unter anderem Folgendes möglich:
.htaccess optimieren
Generell sollte beachtet werden, dass innerhalb der htaccess-Datei so viel wie nötig und so wenig wie möglich stehen sollte. Unnötiger Ballast sollte vermieden werden, da sie die Performance von WordPress sonst beeinflussen kann. Wenn du auf der Suche nach einem verlässlichen Hostingpartner bist, der dir auch bei Fragen zur htaccess, wp-config.php oder Ähnlichem mit Rat und Tat zur Seite steht, solltest du nach einem gut bewerteten Anbieter von Managed WordPress Hosting Ausschau halten.

Picture of Johannes

Johannes

4 Antworten

  1. Vielen Dank für den tollen Bericht, eine Frage noch muss ich den Code add_filter(‚flush_rewrite_rules_hard‘,’__return_false‘); in die .htaccess und in die funktion.php einfügen oder nur in die htaccess? Vielen Dank für deine Antwort E.I Wagner

    1. Hallo Estrella,

      dein Code gehört nur in die functions.php. Würdest du diesen in die htaccess schreiben, würde deine Seite wahrscheinlich nicht mehr funktionieren.

  2. und noch eine Frage, wo liegt die functions.php, es gibt eine in den wp-content/themes und eine in wp-includes/ welche brauche ich? Vielen Dank!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert