Die WordPress-Konfigurationsdatei, auch bekannt als wp-config.php, wird am häufigsten zum Einrichten einer Datenbankverbindung verwendet und dann vergessen. Dabei können Sie in dieser Datei eine Vielzahl von Einstellungen vornehmen, um Ihre WordPress-Installation zu sichern, zu beschleunigen und allgemein zu optimieren. Wir haben die wichtigsten Einstellungen der wp-config.php für Sie in diesem Beitrag zusammengetragen.
Inhalt
Worum geht es?
Obwohl Sie die Konfigurationsdatei normalerweise nicht häufig verwenden, sind wir sicher, dass fast jede WordPress-Installation davon profitieren könnte, dieser Datei ein paar Zeilen Code hinzuzufügen. Eine gut durchdachte Konfigurationsdatei kann nicht nur eine Website schneller und sicherer machen, sondern auch Funktionen wie die Möglichkeit, den Papierkorb häufiger zu leeren oder die Revisionen zu deaktivieren und erweiterte Debugging-Funktionen zu bieten.
In diesem Artikel sehen wir uns die Standardeinstellungen an, die mit Ihrer Konfigurationsdatei geliefert werden und wie Sie sie optimieren können, um den Anforderungen Ihrer WordPress-Website besser zu entsprechen.
HINWEIS: Sie müssen alle Konfigurationen VOR /* Das war’s, Schluss mit dem Bearbeiten! Viel Spaß. */ bzw. /* That’s all, stop editing! Happy publishing. */ einfügen!
Was ist die Datei wp-config.php?
Laut dem WordPress-Codex ist die Konfigurationsdatei eine der wichtigsten Dateien in Ihrer WordPress-Installation. Die Datei befindet sich in Ihrem WordPress-Stammverzeichnis und enthält wichtige Informationen wie Datenbankverbindungsdaten (Benutzername, Passwort usw.) und verschiedene Einstellungen.
wp-config.php ist eigentlich kein Teil der Dateien, die mit WordPress ausgeliefert werden. Wenn Sie die WordPress-Software herunterladen, finden Sie diese Datei nirgendwo. Stattdessen finden Sie wp-config-sample.php. Die Grundeinstellungen sind in der Datei selbst sehr gut dokumentiert. Wenn Sie WordPress installieren, können Sie diese Datei in wp-config.php umbenennen und manuell an Ihren Webserver anpassen. Oder WordPress erstellt eine endgültige Konfigurationsdatei basierend auf den Informationen, die Sie während der Installation angeben.
WordPress-URLs definieren
Zwar können Sie direkt im Backend von WordPress unter Einstellungen > Allgemein die WordPress-URLs bestimmen, wenn Sie aber sicher gehen wollen, dass die Einstellungen nicht aus Versehen geändert oder gelöscht werden, dann tragen Sie sie am besten direkt in die wp-config.php ein. Dieser Eintrag ist dann im Backend nicht anpassbar.
define('WP_HOME','https://ihredomain.de'); //WordPress-Adresse (Backend)
define('WP_SITEURL','https://ihredomain.de'); //Website-Adresse (Startseite)
Datenbank klein halten
WordPress bietet in seiner Grundeinstellung viele Sicherungen bei der Erstellung Ihrer Inhalte. So kann man bei Fehlern recht komfortabel vorherige Versionen von Seiten und Beiträgen wieder aktivieren. Beim Aufbau einer Website bzw. bei der regelmäßigen Pflege wächst die Größe der Datenbank recht schnell an. Wenn Sie das unterbinden möchten, empfehlen sich die folgenden Programmzeilen:
define('WP_POST_REVISIONS', 5); //Anzahl maximal gespeicherter Revisionen
define('WP_POST_REVISIONS', false); //Keine Revisionen werden gespeichert
define('AUTOSAVE_INTERVAL', 30); //Alle 30 Sekunden wird automatisch gespeichert (Standard 60)
Auch im „Papierkorb“ sammelt sich schnell viel virtueller Datenmüll. Für das automatische löschen, bzw. die Deaktivierung des Papierkorbs gib es den folgenden Code:
define('EMPTY_TRASH_DAYS', 60); //Alle 60 Tage wir der Papierkorb geleert
define('EMPTY_TRASH_DAYS', 0); //Der Papierkorb wird sofort geleert
Geschwindigkeit erhöhen und WordPress schlank halten
Auch für die Verkürzung der Ladezeit Ihrer Website hat WordPress Einstellungsmöglichkeiten vorgesehen. WordPress hat zum Beispiel ein integriertes Caching-System, das sich in wp-content/advanced-cache.php befindet. Es kann mit der WP_CACHE-Konstante aktiviert werden:
define('WP_CACHE', true); //Den internen Cache von WordPress aktivieren
WordPress benötigt für den Betrieb Arbeitsspeicher. Einige Plug-ins und Themes benötigen eventuell mehr Arbeitsspeicher, als WordPress standardmäßig zugeteilt wird. Mit den folgenden Einträgen können Sie den Arbeitsspeicher erhöhen, bzw. begrenzen, falls das nötig ist. Beachten Sie, dass diese Einstellungen auf vielen Webservern nicht funktionieren, weil Sie vom Hoster vorgegeben sind.
define('WP_MEMORY_LIMIT', '96M'); //Hauptspeicher in MByte festlegen, der für WordPress zur Verfügung steht
define('WP_MAX_MEMORY_LIMIT', '256M'); //Hauptspeicher des Servers für WordPress begrenzen
Mit der folgenden Zeile können Sie die Datenbank von WordPress reparieren und auch die Inhalte optimieren. Dies kann notwendig werden, wenn die Website langsamer wird oder sich unerklärliche 404er-Fehler häufen. Nach dem Aktivieren des Codes können Sie http://ihredomain.de/wp-admin/maint/repair.php die Reparatur und/oder Optimierung durchführen. Nach der Optimierung sollten Sie die Zeile aus Gründen der Sicherheit wieder aus der Konfigurationsdatei löschen!
define('WP_ALLOW_REPAIR', true); //Datenbank reparieren und optimieren
WordPress bietet ein paar Features, die den Inhalt automatisch verschönern sollen. Eine dieser Funktionen ist das Darstellen von Emojis durch Austausch von Zeichen wie ;-) durch entsprechender Bildchen. Diese Emojis müssen extern geladen werden und verlangsamen so die Ladezeit Ihrer Website. Benötigen Sie dieses Gimmick nicht empfiehlt sich die Funktion zu deaktivieren:
define( 'WP_EMOICONS', false );
Standardmäßig erstellt WordPress jedes Mal, wenn Sie ein Bild bearbeiten, einen neuen Satz von Bildern, und wenn Sie das Original wiederherstellen, werden alle Änderungen auf dem Server gespeichert. Der folgende Code ändert dieses Verhalten:
define( 'IMAGE_EDIT_OVERWRITE', true );
Upload-Limit erhöhen
Diese Funktion funktioniert leider nicht immer, weil sie stark von den Server-Einstellung abhängt, aber Sie können versuchen, mit dem folgenden Code, das Upload-Limit von WordPress zu erhöhen (Standard: 2 MB):
define('WP_MEMORY_LIMIT', '8M'); // Upload-Limit auf zum Beispiel 8, 16, 32, 64, 128 MB erhöhen
Upload-Datenformate freigeben
WordPress beschrängt aus Sicherheitsgründen das Hochladen von Dateien auf einige Dateiformate. Versuchen Sie ein unerlaubtes Format hochzuladen, erhalten Sie die Fehlermeldung „Dieser Dateityp ist aus Sicherheitsgründen leider nicht erlaubt.“
Auch die folgende Funktion kann durch die Server-Einstellung limitiert sein, aber Sie können versuchen, mit dem folgenden Code, sämtliche Datenformate freizugeben:
define('ALLOW_UNFILTERED_UPLOADS', true);
Sicherheit verbessern
Im Backend unter Design > Editor lässt sich der Programmcode verschiedenster Dateien direkt anpassen. Das kann bei mangelnder Expertise zu großen Problemen führen. Deswegen empfiehlt es sich diese Möglichkeit zu deaktivieren:
define('DISALLOW_FILE_EDIT', TRUE); // Das Editieren der Dateien unterbinden
Wenn Ihr Webhosting-Plan SSL unterstützt, sollten Sie diese Funktion auf jeden Fall verwenden, um Ihrer Site eine zusätzliche Sicherheitsebene hinzuzufügen und SSL-Logins zu erzwingen:
define('FORCE_SSL_LOGIN', true); // SSL-Login erzwingen
define('FORCE_SSL_ADMIN', true); // SSL-Admin erzwingen
Automatische Updates bestimmen
Die aktuellen Versionen von WordPress bieten automatische Updates.Wenn Ihnen das zu riskant ist – bei jedem Update kann schließlich etas schief gehen – können Sie mit folgenden Befehlen die Updates kontrollieren:
define('AUTOMATIC_UPDATER_DISABLED', true); //Automatische Updates generell abschalten
define( 'WP_AUTO_UPDATE_CORE', false ); //Deaktivieren Sie alle WordPress-Updates
define( 'WP_AUTO_UPDATE_CORE', true ); //Aktivieren Sie alle WordPress-Updates, einschließlich großer und kleiner Versionssprüngen
define( 'WP_AUTO_UPDATE_CORE', 'minor' ); //Das ist der Standard, es werden nur die Service-Updates automatisch durchgeführt
Fehlersuche
WordPress bietet einen internen Debug-Modus zum Auffinden von Fehlern. Mit den vollenden Programmzeilen werden Ihnen alle WordPress-Fehler angezeigt. Ändern Sie den Wert wieder auf false, ist der Debug-Modus wieder deaktiviert. Es reicht nicht die Zeile zu löschen, Sie müssen wirklich den Wert ändern.
define('WP_DEBUG', true); // Fehlersuche anschalten (false = aus)
Mit folgendem Befehl werden die WordPress-Fehler in eine Datei geschrieben. So kann man besser auf Fehlersuche gehen. Das ist besonders wichtig, wenn die Fehler nicht direkt auf der Website ersichtlich sind. Die Datei mit den Fehlermeldungen befindet sich im Verzeichnis /wp-content/ und hat den Namen debug.log. Die Datei wird aber nur angelegt, wenn Fehler auftreten.
define('WP_DEBUG_LOG', true); //Fehler in Log-Datei schreiben
Sie können Fehler aber auch direkt auf der Website anzeigen lassen. WordPress verwendet als Standard die Einstellung true. Ist die Website bereits im Betrieb, sollte man die Anzeige lieber abschalten und die Fehler besser in die Log-Datei schreiben. So werden die Besucher nicht gestört.
define('WP_DEBUG_DISPLAY', false); //Fehler werden auf der Website nicht angezeigt (true = an) @ini_set( 'display_errors', 0 ) //Fehler werden auf der Website nicht angezeigt (1 = an)
Wenn Sie WP_DEBUG aktivieren, werden alle PHP-Fehler und Hinweise und Warnungen zum Beispiel zu veralteten Funktionen angezeigt .
define( 'WP_DEBUG', true ); // PHP-Fehler werden angezeigt (false = aus)
Auf WordPress.org finden Sie den Artikel Debugging in WordPress, der sich mit weiteren Debug-Möglichkeiten befaßt.
FTP-Zugang eintragen
Auf einigen Servern ist der FTP-Zugang so definiert, dass WordPress nicht Dateien per FTP laden kann und so zum Beispiel auch die automatischen Updates nicht funktionieren. In diesen Fällen können Sie mit Hilfe der folgenden Zeilen die nötigen Informationen direkt in die wp-config.php eintragen:
define('FTP_HOST', 'ftp.yoursite.com'); //Der FTP-Host
define('FTP_USER', 'Your_FTP_Username'); //FTP-Benutzername
define('FTP_PASS', 'Your_FTP_password'); //FTP-Passwort
Die meisten Hosting-Unternehmen bieten SSL für ihre Kunden an. Wenn Ihr Host dies tut, stellen Sie sicher, dass Sie SSL-FTP-Verbindungen für zusätzliche Sicherheit einschalten:
define(‚FTP_SSL‘, true); //SSL einschalten
Relative Links für Dateien und Medien (Uploads)
Laden Sie Dateien in WordPress hoch werden sie immer unter der vollständigen (absoluten) URL verlinkt (also inklusive http und Domain: „https://elbnetz.com/wp-content/uploads/2019/04/….„). Beim Umzug auf eine andere Domain müssen alle diese Links aktualisiert werden. Das kann mit folgendem Eintrag verhindert werden. WordPress setzt dann künftig nur noch relative Links („/wp-content/uploads/2019/04/….„):
define( 'WP_CONTENT_URL', '/wp-content');
Noch zwei Tricks für eine Multisite-Installation
Möchten Sie das Upload-Kontingent für jede Site in Ihrem Netzwerk festlegen bietet sich die folgende Code-Zeile.
Nachdem Sie den Code hinzugefügt haben, gehen Sie zu Netzwerkverwaltung > Websites, wählen Sie die gewünschte Website aus, wechseln ins Dashboard und wechseln im Menü über Einstellungen > Allgemein. Dort müssen Sie bis zum Ende der Seite scrollen, wo das Upload-Kontingentfeld angezeigt wird.
define('PSTS_QUOTA_ALLOW_OVERRIDE', true);
Gibt jemand eine Subdomain ein, die in Ihrem Netzwerk nicht existiert, dann leitet WordPress automatisch zu einer Seite zur Registrierung um. Erlauben Sie aber überhaupt keine Registrierung, dann können Sie mit dem folgenden Befehl zu einer URL Ihrer Wahl weiterleiten:
define( 'NOBLOGREDIRECT', 'https://ihredomain.de' ); //Zu einer beliebigen URL weiterleiten
Eventuell müssen Sie nun noch
remove_action('template_redirect', 'maybe_redirect_404' );
in die functions.php des Themes eintragen, damit 404-Fehler korrekt funktionieren und nicht zur Hauptdomain umgeleitet werden.
Zusammenfassung
Das sind die wichtigsten Ergänzungen für die wir im Netz gefunden haben. Diese Liste hat keinen Anspruch auf Vollständigkeit. Wie Sie dem Beitrag entnehmen, ist die Datei wp-config.php sehr wichtig für Ihre WordPress-Website. Wählen Sie die Einstellungen also mit bedacht und legen unbedingt Sicherungskopien vor der Anpassung an. Es empfiehlt sich auch, die Datei vor Zugriffen zu schützen. Tragen Sie dazu in Ihre .htaccess den folgenden Code ein:
# protect wpconfig.php <files wp-config.php> Order deny,allow deny from all </files>
Übrigens: Für Fortgeschrittene User gibt es auch das Online-Tool wp-config.php Generator, mit dem Sie die wp-config.php online konfigurieren können.
1 Kommentar. Wir freuen uns über Ihren Kommentar
Hey, ich hinterlasse sonst nie einen Kommentar und wenn, dann nur um meine Websites unterzubringen – was wenig Sinn macht, manchmal aber Traffic bringt – ich komme vom Thema ab… Hammer Artikel, vielen Dank! Habe ewig gesucht wie ich das dämliche „WP-LIMIT: 40 MB“ raus bekomme, wenn ja davor ganz klar „Arbeitsspeicher: 78.5 von 256 MB (31%)“ steht… oh mann habe ich lange gesucht… Versuch das mal herauszufinden, wenn du nicht weisst was da los ist :D dieser Unterschied von MAX und ohne MAX… ey … Wahrscheinlich habe ich das davor auch schon gesehen, aber nie auf das MAX geachtet und dachte mir, dass da alle das gleiche schreiben. Hier aber direkt untereinander mit ner Erklärung… Gute Inhalte, Ihr habt’s verdient damit zu ranken ;)