Kürzlich fragte einer unserer Leser, ob es möglich sei, WordPress daran zu hindern, den benutzerdefinierten Code in deiner .htaccess-Datei zu überschreiben?
WordPress fügt zusammen mit mehreren Plugins benutzerdefinierte Einstellungen zur .htaccess-Konfigurationsdatei hinzu. Wenn Sie .htaccess Ihren eigenen benutzerdefinierten Code hinzugefügt haben, befürchten Sie möglicherweise, dass dieser überschrieben oder gelöscht wird.
In diesem Artikel zeigen wir Ihnen, wie Sie verhindern können, dass WordPress die .htaccess-Datei überschreibt.
Warum überschreibt WordPress die .htaccess-Datei?
Ihre .htaccess-Datei ist eine leistungsstarke Konfigurationsdatei, die wichtige Einstellungen Ihrer WordPress-Website speichert. Es enthält Regeln, die Ihrem Hosting-Server mitteilen, wie er mit Ihrer Website umgehen soll.
WordPress verwendet die .htaccess-Datei, um seine Permalink-Einstellungen zu speichern. Wann immer Sie Ihre Permalinks ändern oder neu generieren, überschreibt WordPress automatisch die alten Einstellungen in .htaccess mit den neuen Einstellungen.
Einige WordPress-Plugins speichern ihre Einstellungen auch in .htaccess. Beispielsweise ändert das W3 Total Cache-Plugin Ihre .htaccess-Datei, um die Caching- und Optimierungstools zu konfigurieren, die Teil des Plugins sind.
Schließlich können Sie Ihre eigenen benutzerdefinierten Änderungen an .htacess vornehmen, um zu steuern, wie Ihre Website funktioniert. Sie können der Datei beispielsweise benutzerdefinierte Regeln hinzufügen, die Ihren Admin-Bereich schützen, Ihre Website vor Hackern schützen, Weiterleitungen einrichten, verdächtige IP-Adressen sperren und vieles mehr.
Einige Benutzer sind besorgt, dass, wenn sie ihre eigenen benutzerdefinierten Regeln zu .htaccess hinzufügen, diese möglicherweise gelöscht werden, wenn WordPress die Datei mit neuen Einstellungen überschreibt. Andere Benutzer konfigurieren .htaccess lieber manuell und lassen WordPress überhaupt nicht darauf schreiben.
Lassen Sie uns einen Blick darauf werfen, wie Sie verhindern können, dass WordPress Ihre .htaccess-Datei überschreibt. Verwenden Sie einfach die Quicklinks unten, um zu dem Abschnitt zu springen, der Sie interessiert.
So verhindern Sie, dass WordPress Ihre .htaccess-Regeln überschreibt
Die gute Nachricht ist, dass Sie sicher sein können, dass Ihre benutzerdefinierten Regeln nicht überschrieben werden, wenn Sie verstehen, wie die .htaccess-Datei funktioniert.
Denn die Bereiche der Datei, die von WordPress oder Ihren Plugins verändert werden, sind deutlich gekennzeichnet. Stellen Sie einfach sicher, dass Sie diesen Bereichen keinen Code hinzufügen.
Ändern Sie keinen Code innerhalb der WordPress-Marker
Wie bereits erwähnt, verwendet WordPress .htaccess, um die Einstellungen für eine SEO-freundliche URL-Struktur zu speichern. Der in der Datei gespeicherte Code wird automatisch überschrieben und aktualisiert, wenn Sie Ihre Permalink-Einstellungen ändern.
Wie Sie im folgenden Screenshot sehen können, speichert WordPress diese Informationen zwischen zwei Markierungen, # BEGIN WordPress
Und # END WordPress
.
Beachten Sie die Warnung in diesen Markierungen:
Die Anweisungen (Zeilen) zwischen „BEGIN WordPress“ und „END WordPress“ werden dynamisch generiert und sollten nur über WordPress-Filter geändert werden. Alle Änderungen an den Anweisungen zwischen diesen Markierungen werden überschrieben.
Das bedeutet, dass WordPress keinen Code überschreibt oder ändert, den Sie außerhalb dieser Markierungen hinzufügen. Benutzer fügen normalerweise ihren benutzerdefinierten Code oben in der Datei über der Datei hinzu # BEGIN WordPress
Marker.
Spitze: .htaccess ist eine versteckte Datei, die sich im Stammordner Ihrer WordPress-Site befindet. Wenn Sie Schwierigkeiten haben, sie zu finden, dann werfen Sie einen Blick auf unseren Leitfaden, warum Sie die .htaccess-Datei auf Ihrer WordPress-Seite nicht finden können.
Ändern Sie keinen Code innerhalb der Markierungen Ihrer Plugins
Wenn ein Plugin seine Einstellungen in .htaccess speichert, platziert es sie auch zwischen Markierungen, die wie aussehen # BEGIN Plugin
Und # END Plugin
.
Wenn Sie beispielsweise das W3 Total Cache-Plug-in installieren und einrichten, um die Geschwindigkeit und Leistung Ihrer Website zu verbessern, fügt es zwischen .htaccess Regeln hinzu # BEGIN W3TC Browser Cache
Und # END W3TC Browser Cache
Markierungen.
Diese Regeln werden jedes Mal überschrieben, wenn Sie die Einstellungen des Plugins ändern, also müssen Sie darauf achten, keine eigenen benutzerdefinierten .htaccess-Regeln zwischen diesen Markierungen hinzuzufügen.
Erstellen von Markierungen für Ihren benutzerdefinierten Code
In seltenen Fällen kann ein schlecht benommenes Plugin Code außerhalb seines ändern # BEGIN
Und # END
Markierungen. Es wird jedoch normalerweise keinen Code ändern, der zwischen den von WordPress oder anderen Plugins verwendeten Markierungen gefunden wird.
Wenn Sie befürchten, dass ein Plugin mit schlechtem Verhalten Ihren Code überschreibt, können Sie der .htaccess-Datei Ihre eigenen Markierungen hinzufügen.
Sie können beispielsweise eingeben # BEGIN MyCustomCode
Und # END MyCustomCode
Markierungen oben in der .htaccess-Datei und fügen Sie dann Ihre eigenen benutzerdefinierten Regeln zwischen diesen Markierungen hinzu.
Wenn Sie auch Code am Ende von .htaccess hinzufügen müssen, können Sie dort einen anderen Satz von Markierungen hinzufügen. Achten Sie nur darauf, ihnen unterschiedliche Namen zu geben. Sie könnten beispielsweise „MyCustomCodeTop“ und „MyCustomCodeBottom“ verwenden.
So hindern Sie WordPress daran, .htaccess zu ändern
Jetzt, da Sie verstehen, wie .htaccess funktioniert, können Sie können sicher sein, dass Ihr benutzerdefinierter Code nicht von WordPress oder Ihren Plugins überschrieben wird.
Einige Entwickler und fortgeschrittene Benutzer möchten jedoch verhindern, dass WordPress Änderungen an .htaccess vornimmt.
Sie möchten beispielsweise Permalinks erstellen, indem sie die Einstellungen manuell in .htaccess eingeben. In diesem Fall möchten sie Konflikte vermeiden, indem sie verhindern, dass WordPress seine eigenen Permalink-Einstellungen in der Datei speichert.
Wir empfehlen dies nur, wenn Sie wissen, was Sie tun, da dies zu unerwarteten Folgen führen kann. Sie können jedoch die Berechtigungen der Datei ändern oder Code verwenden.
Verhindern, dass WordPress .htaccess mithilfe von Dateiberechtigungen ändert
Eine Möglichkeit, WordPress daran zu hindern, .htaccess zu ändern, besteht darin, die Datei schreibgeschützt zu machen. Dazu müssen Sie die Dateiberechtigungen mit einem FTP-Client oder dem von Ihrem WordPress-Hosting-Provider bereitgestellten Dateimanager ändern.
Sie finden die .htaccess-Datei im Stammverzeichnis Ihrer WordPress-Installation. Als nächstes sollten Sie mit der rechten Maustaste auf die Datei klicken und „Dateiberechtigungen“ auswählen.
Dadurch wird ein Popup-Fenster angezeigt, in dem Sie die Attribute der Datei ändern können.
Die Standardeinstellung ist 644, aber Sie können diese auf 444 ändern, indem Sie direkt in das Feld „Numerischer Wert“ eingeben oder sicherstellen, dass nur die Kästchen „Lesen“ aktiviert sind.
Sobald Sie auf die Schaltfläche „OK“ klicken, ist die Datei schreibgeschützt und kann nicht geändert werden.
Das bedeutet natürlich, dass Sie auch nicht in die Datei schreiben können. Wenn Sie Änderungen vornehmen möchten, müssen Sie die Dateiberechtigungen vorübergehend auf 644 zurücksetzen.
Verhindern, dass WordPress .htaccess mithilfe von Code ändert
Eine andere Lösung besteht darin, ein Code-Snippet zu verwenden, das WordPress mitteilt, dass es nicht in die .htaccess-Datei schreiben soll. Dies ist nützlich, wenn Sie verhindern möchten, dass WordPress .htaccess ändert, ohne Ihre Plugins zu blockieren.
Notiz: Das Bearbeiten von WordPress-Kerndateien kann gefährlich sein. Selbst ein kleiner Fehler kann zu großen Fehlern auf Ihrer Website führen. Deshalb empfehlen wir diese Methode nur fortgeschrittenen Benutzern.
Fügen Sie einfach das folgende Code-Snippet am Ende Ihrer wp-config.php-Datei hinzu. Wenn Sie Hilfe benötigen, lesen Sie bitte unsere Anleitung zum Bearbeiten der Datei wp-config.php in WordPress.
add_filter('got_rewrite', '__return_false');
Sobald Sie das getan haben, schreibt WordPress nicht mehr in die .htaccess-Datei.
Fehlermeldung wird angezeigt, wenn WordPress .htaccess nicht ändern kann
Wenn Sie versuchen, Ihre Permalink-Einstellungen zu ändern, während .htaccess auf schreibgeschützt eingestellt ist, wird eine Fehlermeldung angezeigt.
An der Spitze der Einstellungen » Permalinks Seite sehen Sie die Meldung ‚You should update your .htaccess file now.‘
Dadurch wissen Sie, dass WordPress die .htaccess-Datei nicht ändern konnte.
Normalerweise ist dies das, was Sie beabsichtigt haben. Wenn Sie jedoch die WordPress-Permalink-Einstellungen zu .htaccess hinzufügen möchten, müssen Sie dies manuell tun.
Am unteren Rand der Einstellungen ≫ Permalinks Seite sehen Sie eine weitere Fehlermeldung, die besagt, dass Ihre .htaccess-Datei nicht beschreibbar ist. Darunter sehen Sie die Regeln, die zu .htaccess hinzugefügt werden müssen.
Wenn Sie diese Einstellungen hinzufügen möchten, müssen Sie die Berechtigungen der .htaccess-Datei vorübergehend auf 644 zurücksetzen, damit sie bearbeitet werden kann. Danach sollten Sie die Regeln zwischen den WordPress BEGIN- und END-Markierungen der Datei einfügen und den bereits vorhandenen Code ersetzen.
Wenn Sie fertig sind, setzen Sie den Wert einfach auf 444 zurück und speichern Sie die Datei. Es wird wieder unbeschreibbar sein.
Wir hoffen, dass dieses Tutorial Ihnen geholfen hat, zu lernen, wie Sie verhindern können, dass WordPress die .htaccess-Datei überschreibt. Vielleicht möchtest du auch lernen, wie man Push-Benachrichtigungen in WordPress hinzufügt, und sieh dir unsere Expertenliste der besten WordPress-SEO-Plugins und -Tools an.