Die Einstellungen der wp-config.php optimal anpassen
Die Konfigurationsdatei von WordPress ist einer der ersten Punkte um deinen Blog für dich anzupassen. Du brauchst keine Angst davor zu haben, denn ich erkläre dir alles was du machen kannst und auch warum du von manchem die Finger lassen solltest. Aber du kannst hier viel mehr als die Datenbankeinstellungen eintragen und dir damit das Laben als BloggerIn leichter und auch sicherer machen. Klar passt du hier wirklich die Grundeinstellungen deines Blogs an, aber damit kannst du ihn endlich so anpassen, dass du nicht dauernd dieselben Klicks machen musst. Und wenn du deinen Blog sicherer machen willst, musst du so oder so weiterlesen.
Was ist die wp-config.php?
Die meisten BloggerInnen bekommen diese Datei nie zu sehen und müssen sich auch nicht damit auseinander setzen. Doch die Konfigurationsdatei ist der zentrale Punkt wenn WordPress eine der Basiseinstellungen benötigt oder in der eine zusätzliche Einstellung festgelegt werden kann. Viele Einstellungen deines Blogs werden im DashBoard von WordPress festgelegt, aber diese werden in der Datenbank selbst gespeichert. Damit WordPress die Datenbank findet und auch andere Grundparameter kennt, muss es zuerst die Einstellungen in der wp-config.php
lesen. Dies geht viel schneller als ein Zugriff auf die Datenbank, aber ist nicht so flexibel.
Sei vorsichtig! Wenn du etwas an den Blog-Einstellungen in der wp-config.php
veränderst, kannst du auch deinen gesamten Blog stilllegen. Daher machst du dir immer eine Kopie der Datei, bevor du daran etwas veränderst. Wenn wirklich alle Strick reißen, kannst du einfach eine funktionierende Konfigurationsdatei auf deinen WebSpace kopieren und dein Blog ist wieder da.
Wo finde ich die Konfigurationsdatei wp-config.php
?
Wo trage ich die Einstellungen in der wp-config.php
ein?
Zuerst sicherst du dir mit dem FTP-Programm die wp-config.php
an einen sicheren Platz auf deinem Computer. Dann kannst die Datei mit jedem einfachen Texteditor öffnen. Aber besser wäre vielleicht NotePad++ oder Sublime Text 3 zu verwenden. Mit einer der beiden Editoren bist du sicher, dass keine besonderen Zeichen oder Formatierungen in die Datei reinkommen und dann nichts mehr funktioniert.
Jetzt suchst du die Zeile mit Das war's, Schluss...
, hier ist es die Nummer 107. Genau vor dieser Zeile kannst du deine Änderungen eintragen, falls nicht bereits eine Zeile in der Konfigurationsdatei vorhanden ist.
104
105
106
107
108
109
110
111
112
113
114
115
|
...
define(‚WP_DEBUG‘, false);
/* Das war’s, Schluss mit dem Bearbeiten! Viel Spaß beim Bloggen. */
/* That’s all, stop editing! Happy blogging. */
/** Der absolute Pfad zum WordPress-Verzeichnis. */
if (!defined(‚ABSPATH‘))
define(‚ABSPATH‘, dirname(__FILE__).‚/‘);
/** Definiert WordPress-Variablen und fügt Dateien ein. */
require_once(ABSPATH.‚wp-settings.php‘);
|
Einstellungen in der wp-config.php
für Posts
WordPress erledigt ja einiges automatisch während du deine Blog-Posts schreibst. Das meiste ist ganz praktisch, aber ein wenig Kontrolle wäre auch nicht schlecht. Diese bekommst du mit diesen Einträgen.
Wie oft soll WordPress automatisch Speichern
1
|
define(‚AUTOSAVE_INTERVAL‘, 240);
|
WordPress legt während des Schreibens eines Posts im Editor im wieder eine neue Version an. Mit der Zahl kannst du festlegen, wie viele Sekunden zwischen den Speicherzeitpunkten liegen sollen. Im obigen Eintrag sind es 240 Sekunden, also alle 4 Minuten.
Wie viele Versionen eines Posts soll sich WordPress merken?
1
|
define(‚WP_POST_REVISIONS‘, 5);
|
Mit der Zahl legst du fest, wie viele Versionen maximal angelegt werden sollen. Damit kannst du schrittweise deine Änderungen in einem Blog-Post wieder rückgängig machen. Je nach deiner Arbeitsweise solltest du hier die Zahl anpassen. Wenn du deine Posts nicht direkt in WordPress schreibst reicht eine kleinere Zahl, da du nur wenige Änderungen hast, sonst nimmst du eine größere Zahl um mehr Sicherheit zu haben. Willst du die Versionierung vollständig abschalten, kannst du false
statt einer Zahl verwenden.
Wann soll der Papierkorb von WordPress automatisch geleert werden?
1
|
define(‚EMPTY_TRASH_DAYS‘, 7);
|
Die Zahl gibt die Tage an, wie lange ein Element (Seite, Blog-Post, Bild, etc.) im Papierkorb bleiben soll, bevor es endgültig von WordPress gelöscht wird. Willst du den Papierkorb vollständig deaktivieren, kannst du 0
für die Tage eingeben. Dann löscht WordPress alle Daten sofort ohne Umweg über den Papierkorb.
Die Ordnerstruktur und die URLs von WordPress anpassen
Dein WordPress-Blog liegt auf einer Festplatte eines WebServers und dort werden die Daten in verschiedenen Verzeichnissen gespeichert. Diese kannst du in der Konfigurationsdatei anpassen. Falls du daran denkst die Ordnerstruktur aus Sicherheitsgründen zu verändern, dann lass es lieber gleich. Jeder minderbegabte Hacker wird die neue Struktur in Sekunden herausfinden. Denn security by obscurity hat bei Webseiten noch nie so richtig funktioniert.
Bevor du die Pfade in der Konfigurationsdatei veränderst, solltest du die neuen Pfade anlegen und auch die Inhalte dorthin verschieben. Achte aber darauf, dass die meisten Pfade auch in der Datenbank gespeichert sind, diese musste du dann natürlich auch anpassen. Also am Besten ist es, die Einstellungen vor den ersten Änderungen und Installationen durchzuführen. Falls du die Pfade bei einem laufenden Blog verändern willst, kannst du die Änderungen nicht direkt in der Datenbank vornehmen. Dazu solltest du ein Tool wie Database Search and Replace Script in PHP verwenden, damit hier keine Fehler passieren und dein Blog wirklich nur mehr mit einer Datensicherung zu retten ist.
Wie kann ich mehrere URLs für einen Blog verwenden?
Du kannst diesen Blog unter https://www.tmdn.at und unter https://the-magical-digital-nomad.com/ erreichen. Dies geht mit den folgenden beiden Einträgen in der wp-config.php
.
1
2
|
define(‚WP_SITEURL‘, ‚http://‘.$_SERVER[‚HTTP_HOST‘].‚/‘);
define(‚WP_HOME‘, ‚http://‘.$_SERVER[‚HTTP_HOST‘].‚/‘);
|
Eine elegantere Methode ist eine AddOn-Domaine deines Hosters oder die passenden Einträge in der Datei .htaccess
deines WebSpaces.
Das Verzeichnis für den Inhalt des Blogs verändern
1
|
define(‚WP_CONTENT_DIR‘, dirname(__FILE__).‚/blog/content‘);
|
Den gesamten Ordner für den Inhalt kannst du mit dieser Zeile verschieben. Dadurch sind alle PlugIns, Themes und Uploads in den neuen Ordner verschoben worden. Den neuen Ordner gibst du am Ende an (in diesem Beispiel /blog/content
). Achte darauf, die Schrägstriche und Anführungsstriche richtig einzugeben.
Den Ordner für die PlugIns verschieben
1
|
define(‚WP_PLUGIN_DIR‘, dirname(__FILE__).‚/blog/content/plugins‘);
|
Den Ordner für die PlugIns verschiebst du mit dieser Einstellung. Damit werden alle Erweiterung in diesem Ordner installiert. Aber auch hier kann es zu Problemen kommen. Denn nicht jedes PlugIn (besonders wenn es nicht sauber programmiert ist) kann mit dieser Änderung umgehen.
Den Ordner für die Uploads verändern
1
|
define(‚UPLOADS‘, ‚/website/media‘);
|
Damit änderst du den Speicherort für alle Uploads (normalerweise die Mediathek). Hier musst du den gesamten relativen Pfad angeben. Auch bei dieser Einstellung musst du probieren ob es in deinem Blog funktioniert. Denn nicht alle Themes und PlugIns können mit einem veränderten Upload-Verzeichnis umgehen.
Falls du bereits Medien in deinem Blog verwendest, musst du auch die Pfade in der Datenbank anpassen, sonst wirst du auf bei deinen Posts keine Bilder mehr sehen.
Performance und lokale Installationen anpassen
Den Verbrauch der Ressourcen von WordPress ändern
WordPress (eigentlich die Programmiersprache PHP) braucht am Server Hauptspeicher um alle Aufgaben zu erledigen und andere Ressourcen, wie Platz für Variablen und die Datenübertragung. Diese Einstellungen kannst du in einem bestimmten Rahmen (je nach dem, was der Hoster zulässt) in der wp-config.php ändern.
1
|
define(‚WP_MEMORY_LIMIT‘, ’96M‘);
|
Mit der Zahl gibst du den Hauptspeicher in MByte an (hier 96), der für WordPress zur Verfügung steht.
1
|
define(‚WP_MAX_MEMORY_LIMIT‘, ‚256M‘);
|
Damit WordPress, besser PHP, nicht den gesamten Hauptspeicher des Servers verwendet, kannst du ihn mit diesem Eintrag begrenzen.
Den internen Cache von WordPress aktivieren
1
|
define(‚WP_CACHE‘, true);
|
Mit dieser Zeile verwendest du den internen Cache von WordPress, falls du kein weiteres Caching-PlugIn einsetzen willst oder kannst. Natürlich solltest du hier noch ein wenig an der .htaccess
-Datei und den Servereinstellungen feilen um das Optimum herauszuholen.
Die Datenbank reparieren und optimieren
1
|
define(‚WP_ALLOW_REPAIR‘, true);
|
Mit dieser Zeile kannst du die Datenbank von WordPress reparieren und auch die Inhalte optimieren. Dies kann immer wieder mal notwendig werden. Du erkennst es daran, dass dein Blog immer langsamer wird oder sich unerklärliche 404er-Fehler häufen. Dann trägst du diese Zeile in deine wp-config.php
ein. Nach dem Hochladen kannst du mit https://der-super.blog.at/wp-admin/maint/repair.php die Reparatur und/oder Optimierung durchführen. Wenn alles erledigt ist, solltest du die Zeile aus Gründen der Sicherheit wieder aus der Konfigurationsdatei löschen.
Ein kleiner Hinweis:
Die folgenden Einträge müssen bei einer Online-Version von WordPress wieder entfernt werden!
Updates und Installationen lokal durchführen
1
|
define(‚FS_METHOD‘, ‚direct‘);
|
Mit diesem Eintrag kannst du die Update/Installations-Funktion innerhalb der PlugIns und der Themes verwenden. Wenn Du diesen Eintrag nicht machst, musst du alle Updates und Installation erst manuell herunterladen, danach entpacken und dann in die entsprechenden Ordner von WordPress kopieren.
JetPack lokal verwenden
1
|
define(‚JETPACK_DEV_DEBUG‘, true);
|
Diesen Eintrag machst du, wenn du das PlugIn JetPack verwendest. Denn erst damit kannst du dich mit WordPress verbinden und alle Funktionen des PlugIns benutzen, wenn du auf deinem eigenen Computer eine WordPress-Installation bearbeitest
Fehler suchen und beheben
Den Debug-Modus einschalten
1
|
define(‚WP_DEBUG‘, true);
|
Mit dieser Zeile schaltest du den internen Debug-Modus für WordPress ein. Damit werden dir alle WordPress-Fehler auf jeder Seite im FrontEnd und auch im Dashboard angezeigt. Änderst du den Wert wieder auf false, ist der Debug-Modus wieder deaktiviert. Es reicht nicht die Zeile zu löschen, du musst wirklich den Wert ändern.
Eine log-Datei der Fehlermeldungen erzeugen
1
|
define(‚WP_DEBUG_LOG‘, true);
|
Mit dieser Zeile werden die WordPress-Fehler in eine Datei geschrieben. Dies ist praktisch, denn du kannst so besser danach suchen welche Fehler wo aufgetreten sind. Besonders wichtig ist diese Datei, wenn du nach Fehlern suchst, welche nicht direkt auf der Webseite auftreten. Dies treten bei AJAX-Aufrufen oder auch durch wp-cron auf und werden nie direkt auf der Webseite angezeigt. Die Datei mit den Fehlermeldungen findest du im Verzeichnis /wp-content/ und hat den Namen debug.log. Die Datei wird aber nur angelegt wenn Fehler in deinem WordPress-Blog auftreten.
Die Ausgabe von Fehlermeldungen verhindern
1
|
define(‚WP_DEBUG_DISPLAY‘, false);
|
Mit dieser Zeile erzwingst du die Ausgabe von Fehlermeldungen direkt auf der HTML-Seite. WordPress verwendet als Standard die Einstellung true. Wenn du Fehler auf einem Live-Blog suchst, ist es nicht sehr schön deine LeserInnen mit Fehlermeldungen zu versorgen. Daher kannst du mit der vorherigen Einstellung eine log-Datei erzeugen und mit dieser die direkte Ausgabe der Fehlermeldungen verhindern. Am Ende hast di eine lange Liste von Fehlern in der Datei debug.log und deine LeserInnen sind nicht gestört.
Die Sicherheit des Blogs erhöhen
Das du deinen Blog nicht zu 100% schützen kannst ist klar. Es wird immer irgendwo eine Lücke, ein Problem oder einen Hacker geben der deiner WordPress-Installation Probleme bereitet. Aber mit diesen Einstellungen kannst du zumindest die Sicherheit erhöhen.
Die Sicherheitsschlüssel festlegen
1
2
3
4
5
6
7
8
|
define(‚AUTH_KEY‘, ‚MQvo>_]MStxo+I83-x2PD8ks,@M[,3FPU-sW7c4-J[xzs`zFBz1JOZiX:[1s|#|B‘);
define(‚SECURE_AUTH_KEY‘, ‚L0yGevc+w6&39+OwJB|*xPF%)*:B<R^T@n6K:nNI0=MkS+(4-O&(V{JAh2^W93UG‘);
define(‚LOGGED_IN_KEY‘, ‚H8+n08qsa]`t=n^8:R]-ZS>Bz[D7*A#NH|Yi.G/!0&lBJV1USh|hlA%Sm[++ITq5‘);
define(‚NONCE_KEY‘, ‚q`r|!d0||SP{;]y?+HBZ)PB}?N*5IffF!wr}v}0jJ+lA-%{nWNwalgsC+VxShF$g‘);
define(‚AUTH_SALT‘, ‚$B7_}Ar<$P1-;+mNbRY>Cb>E|-HB^ym1.joHA_136}h%eC`X&|)-dVcZo$D`r&(r‘);
define(‚SECURE_AUTH_SALT‘, ‚Di~+J3.Ol/9TT_Q6mvHk+%E U^1`}C=XFb7S8*0wS.}-GU5$nBhAppNJ [W7;kUa‘);
define(‚LOGGED_IN_SALT‘, ‚C:Ka.;YG6WYg$I`u9#]1JB+iX5k^X-2}@=7n+|I<8iC[?*,.&pK-bn(vh<Xo-k| ‚);
define(‚NONCE_SALT‘, ’ne9Fm9^P0U:({QtphA(|AtDsrgOLsf0V9tQ^9~upty*2jW-.Y= V+Q79-@WpsGC$‘);
|
Die sogenannten Salt-Keys sind sehr wichtig um eine Basissicherheit zu erzeugen. WordPress verschlüsselt mit diesen Zeichenfolgen unter anderem die Anmeldeinformationen innerhalb der gesetzten Cookies. Falls du sie noch nicht einsetzt ist jetzt der richtige Zeitpunkt diese von der WordPress-Seite generieren zu lassen und an die passende Stelle deiner wp-config.php zu kopieren.
Auch wenn du gehackt wurdest, oder du das Gefühl hast, dass wo ein Sicherheitsproblem besteht kannst du sie austauschen. Das einzige was passiert ist, dass alle anmeldeten Benutzer abgemeldet werden und sich mit ihrem Benutzernamen/Passwort wieder anmelden müssen.
HTTPS für das DashBoard erzwingen
1
|
define(‚FORCE_SSL_ADMIN‘, true);
|
Mit diesem Eintrag zwingst du WordPress das Dashboard über das Protokoll https anzubieten. Ein SSL-Zertifikat ist für die Verschlüsselung der Daten zwischen dem WebServer und dem Browser zuständig. Damit können während der Datenübertragung keine persönlichen Informationen von Hackern gelesen werden. Daher ist es wichtig ein SSL-Zertifikat einzusetzen, dieses bekommst du heute schon bei den meisten Hostern gratis dazu.
Die Anmeldung am DashBoard mit SSL erzwingen
1
|
define(‚FORCE_SSL_LOGIN‘, true);
|
Dieser Eintrag erzwingt das https-Protokoll für die Anmeldung eines Benutzers an deinem Blog. Dieser Eintrag ist aber nur in Zusammenhang mit dem vorhergehenden sinnvoll.
Den internen Editor für Themes und PlugIns deaktivieren
1
|
define(‚DISALLOW_FILE_EDIT‘, true);
|
Mit dieser Zeile schaltest du die Editoren ab, änderst du den Wert auf false, sind sie wieder aktiv. Aus Sicherheitsgründen solltest du sie aber deaktivieren. Natürlich ist es praktisch direkt aus dem DashBoard schnell Änderungen durchführen zu können. Aber Profis trennen Produktiv- und Entwicklungssysteme. Denn nur so haben wir die Sicherheit nicht zufällig etwas zu ändern. Außerdem sind Editoren auf Live-Systemen immer gefährlich, denn wenn die Seite gehackt ist, stehen damit Tür und Tor für weitere Änderungen offen.
Änderungen an Dateien deaktivieren
1
|
define(‚DISALLOW_FILE_MODS‘, true);
|
Mit dieser Zeile können im BackEnd keine Dateien mehr aktualisiert, gelöscht oder hinzugefügt werden. Damit werden auch die DashBoard-Editoren abgeschaltet und du kannst keine Updates mehr machen. Natürlich kannst du auch keine Themes oder PlugIns mehr installieren.
Updates automatisch durchführen
Viele der lästigen täglichen Dinge kann WordPress für dich automatisch erledigen. Einerseits erhöht dies die Sicherheit, da du immer die aktuellsten Versionen verwendest. Andererseits kann dein Blog lahm gelegt werden, wenn sich die neuen Versionen von Theme, PlugIns und WordPress nicht vertragen. Am Besten führst du automatische tägliche BackUps mit einem passenden PlugIn durch.
WordPress automatisch aktualisieren
1
|
define(‚WP_AUTO_UPDATE_CORE‘, true);
|
Mit dieser Zeilen werden alle Updates der WordPress-Installation (nicht der PlugIns und Themes) automatisch durchgeführt. Trägst du false ein werden keine Updates mehr durchgeführt. Du kannst auch ‘minor’ eintragen (achte auf die Anführungsstriche) um nur die Service-Updates automatisch durchzuführen.
Automatische Updates von WordPress verhindern
1
|
define(‚AUTOMATIC_UPDATER_DISABLED‘, true);
|
Die aktuellen Versionen von WordPress haben das automatische Update praktisch eingebaut. Mit dieser Zeile kannst du es aber wieder deaktivieren, falls du diese lieber selber und kontrolliert durchführen möchtest.
Beitragsbild: Unsplash