Wordpress Datenbankfehler abfangen
Wer wordpress betreibt wird u.U. schon einmal die Meldung “Error establishing a database connection” gelesen haben. Diese Meldung kommt immer dann, wenn man entweder die Datenbankanbindung falsch konfiguriert hat oder der hostende Server gerade soviele Anfragen zu bearbeiten hat, dass die Zeit überschritten wird, die das System standardmäßig abwartet bis die Antwort des MySQL Servers kommt.
Im Falle einer falschen Konfiguration ist das Problem sicher schnell behoben. Leidet aber die Maschine kurzzeitig oder dauerhaft an einer Überlastung müssen die Nutzer immer wieder mit dieser Meldung Vorlieb nehmen, was nun wahrlich unschön ist.
Eben dieses zweite Szenario hat mich gestern den ganzen Tag über auf christianrach.de beschäftigt. Nachdem diese Sendung bei RTL lief, ging der Server schon am Ausstrahlungsabend zeitweise in die Knie und kriegte sich auch am Folgetag gestern nicht wieder ein.
Meine erste Aktion war es, eine index.html im DocumentRoot zu hinterlegen, die alle ankommenden Nutzer über die aktuelle Überlastung und unser Engagement, etwas dagegen zu tun, informiert. Die Aktion war nötig, brachte mich aber auch in die verzwicklte Lage immer wieder nachsehen zu müssen, ob der Server schon wieder so stabil läuft, dass es Sinn machen würde die Datei wieder zu entfernen.
Viel klüger ist es da, wordpress selber entscheiden zu lassen, wann es keine Puste mehr hat und entsprechend meine Abfang-Datei auszuliefern.
Wie das funktioniert, ist im Codex erklärt und brachte mich dazu einfach den gesamten Inhalt meiner index.html in eine neu anzulegende Datei namens db-error.php zu packen, die im Verzeichnis /wp-content hinterlegt wird.
Jetzt kann ich mich getrost zurücklegen und abwarten, bis der Server das nächste Mal in die Knie geht. Schön, dass es jetzt mindestens so aussieht als sei noch alles in Ordnung.
geschrieben von carsten