Donnerstag, 3. Januar 2008

Vorübergehende Funktionsstörung

Das neue Jahr fängt richtig gut an!

Heute Morgen stelle ich fest, dass überhaupt keine Anfragen erstellt werden können. Wer einen Ort eingibt, um entsprechende Hausverwaltungen zu finden, sieht eine halb aufgebaute, im Inhaltsbereich leere Seite, und der Seitenfuß fehlt komplett.

Ich hatte mich schon gewundert, dass etwa seit Weihnachten so gut wie keine Anfragen mehr kamen. Kein Wunder, wenn das System nicht läuft. Und unsere Betriebsferien haben dann dazu geführt, dass mir das erst heute auffällt.

Aber woran kann das liegen? 4 Stunden habe ich erstmal gesucht; die in Frage kommenden Scripte haben zusammen etliche Tausend Zeilen. Dann verstärkt sich der Verdacht, dass es am Entfernungsmesser liegen muss.

Die Hausverwaltungen werden anhand der zu dem gesuchten Ort gehörenden Postleitzahlen ermittelt und den Interessenten in einer Reihenfolge angezeigt, die sich an der Entfernung der Verwaltung zum Objektstandort orientiert: Wer am nächsten dran ist, erscheint zuoberst in der Aufstellung der Verwalter, von denen ein Angebot für das Verwalterhonorar berechnet werden kann.

Dazu verwenden wir das System von OpenGeo mit den entsprechenden Datenbanken und den mitgelieferten Funktionen. Das hat jetzt rund anderthalb Jahre prima funktioniert - und auf einmal wird alle blockiert. Wie kann das sein?

Im Dezember haben wir ein Upgrade der PHP-Version von PHP 4 auf PHP 5.2.5 durchgeführt. Es gab mit etlichen unserer Websites Probleme, weil bei der Installation von PHP5 die register_globals standardmäßig auf "off" gestellt sind. Man kann die zwar ganz einfach wieder einschalten, was das Übergeben von Variablen innerhalb verschiedener Scriptdateien vereinfacht - aber aus Sicherheitsgründen wollte ich das nicht. Dann hätte ich Hunderte von Scripten durchgehen müssen, um überall die Zugriffe auf Variablen zu überprüfen und umzustellen, was auf die Schnelle nicht machbar war. Darum habe ich mal durchgeklickt und für alle Problemseiten die register_globals mittels .htaccess oder einem Hilfsscript, je nach Bedarf, wieder gangbar gemacht. Ich dachte, das wär's erstmal.

Weit gefehlt. Offenbar sind noch weitere Eigenschaften betroffen - die Entfernungsberechnung jedenfalls hängt sich auf, ohne über irgendwelche Fehler zu moppern und mit entsprechenden Hinweisen anzudeuten, woran es hapert. Also habe ich die Entfernungsmessung erstmal abgestellt.

Auch das war nicht so einfach, ist aber gegen halb zwei dann endlich geglückt. Jetzt erfolgt die Sortierung der Verwaltungen für die Interessenten erstmal nach der Lizenznummer und damit nach dem Zeitpunkt der Anmeldung für die Teilnahme bei HausverwalterSuche.de. Das ist aber nur eine Zwischenlösung - bis ich eine Entfernungsermittlung installiert habe, die kompatibel ist zu der PHP-Version.

Und siehe da: Minuten später kam die erste Anfrage. Ich hoffe doch, dass das System jetzt stabil bleibt.