Meine Linux-Distribution der Wahl, Arch Linux, stellt in der Regel die neuesten Programme schon kurz nach ihrem Erscheinen in den Softwarequellen bereit. So auch bei PHP, der "Must-Have-Skriptsprache" für Webanwendungen: Version 5.4.3 erschien am 8. Mai, am 12. Mai fand diese dann über ein Update den Weg auf meinen Server.

Zwei Anwendungen auf meinem Server nutzen momentan PHP: Tiny Tiny RSS und Owncloud. Owncloud funktionierte nach dem Update ohne Probleme. Tiny Tiny RSS (TT-RSS) war jedoch seitdem nicht mehr in der Lage, PHP-Skripte auszuführen. Der Fehler lag darin, dass ich zwar, der offiziellen Ankündigung folgend, alle meine Änderungen in die neue php.ini übernommen hatte, dabei jedoch die Option open_basedir übersehen. Diese regelt, in welchen Verzeichnissen PHP-Scripts ausgeführt werden dürfen. Das Verzeichnis, in dem ich TT-RSS installiert habe, war darin jedoch nicht aufgeführt. Nachdem ich dieses ergänzte, gab es zumindest einen kleinen Teilerfolg:

Beim Aufrufen von TT-RSS im Browser war nicht ganz tote Hose, sondern TT-RSS meldete sich mit dem Hinweis, ich solle doch bitte die Option open_basedir deaktivieren. Guter Witz. Glücklicherweise hatte ein Blogger in seinem Beitrag die passende Lösung parat. Man kann TT-RSS die Paranoia austreiben, indem man in der Datei sanity_check.php (liegt bei mir im TT-RSS-Unterordner include) folgende Zeilen auskommentiert:

if (ini_get("open_basedir")) {
$err_msg = "php.ini: open_basedir is not supported.";
}

Danach läuft TT-RSS erstmal wieder rund. Bis es eben abstürzt. Immer und immer wieder. Die Schuld ist daran aber wirklich nicht mir zuzuschreiben, sondern den PHP-Entwicklern. So steht zum Beispiel im Uberspace-Wiki:

Wichtig: Neuere Account [sic] statten wir derzeit (Stand März 2012) mit PHP 5.4 aus. Die zu diesem Zeitpunkt aktuelle Version von Tiny Tiny RSS läuft damit leider nicht wirklich rund. Wir empfehlen dir in diesem Fall ein Downgrade auf PHP 5.3.10.

Weitere Infos liefert ein Thread im TT-RSS-Forum. Ich bin scheinbar nicht der einzige mit dem Problem, denn das Problem existiert in PHP 5.4 selbst. Ein fleißiger Hacker hat allerdings schon einen Patch für das Problem geschrieben, der bereits von einem PHP-Entwickler getestet wurde. Es sollte also nicht mehr lange dauern, bis die gepatchte PHP-Version auf meinem Server landet und (vorerst) alles wieder glatt läuft.

Update: Heute wurde das PHP-Paket aktualisert (5.4.3-4), geholfen hat das aber auch nicht. Kurzerhand habe ich also PHP auf 5.3 gedowngradet, damit läuft wieder alles glatt. Bleibt abzuwarten, wann der Patch nun tatsächlich auch seinen Weg in Arch Linux findet.