Die Strato “Business”- und “PowerWeb”-Pakete haben einige Beschränkungen, durch die diverse Content Management Systeme nicht so funktionieren, wie man es gerne hätte …

 

Ärgernis Nummer eins …

… ist der aktive Safe Mode, der z.B. die WordPress eigenen Caching Funktionen unmöglich macht. Schade, da die Datenbank ohnehin schon nicht zu den schnellsten gehört. Dabei könnte man sonst mit dem WordPress Object Cache die Anzahl der Abfragen recht effektiv reduzieren.

Eine andere Möglichkeit, für halbwegs erträgliche Performance zu sorgen, wäre das PlugIn “WP-Cache”, das komplette WordPress-Seiten als statische HTML-Files ablegt. Das klappt trotz Safe Mode, wenn der zum Cachen vorgesehene Ordner entsprechende Schreibrechte erhält.

Dummerweise muss jede neu gespeicherte Seite erst einmal erzeugt und dann auch noch abgespeichert werden, der erste Aufruf einer solchen Seite kann bei Strato gut und gerne 5 Sekunden oder mehr in Anspruch nehmen. Und da für jeden Besucher, bei dem ein Cookie gesetzt ist (was beispielsweise passiert, wenn dieser Besucher einen Kommentar geschrieben hat) immer neue Seiten gespeichert werden, würden also eine ganze Reihe von Besuchern um die 5 Sekunden auf jede Seite warten dürfen.

Dann gibt es das PlugIn “PlugIn Output Cache” - Eine Caching-Routine, die mit der Datenbank arbeitet und keinen Ordner auf dem Server benötigt. Damit kann man so Einiges beschleunigen - Nur bietet das PlugIn gewissermaßen bloß das “Werkzeug” zum Cachen an.

Um einen deutlichen Effekt zu erzielen, muss man u.U. viel Programmier-Arbeit in Kauf nehmen: Denn im Idealfall sollte man mehrere “Ausgabe-Funktionen” in einer zu cachenden Variablen sammeln - damit man am Ende nicht wieder genau so viele Abfragen hat, wie vorher.

 

Ärgernis Nummer zwei …

… ist die Speicherbegrenzung auf 8 MB, etliche Galerie-Skripts brauchen mehr - und WordPress 2.2 kann so schon mal gar nicht auf Strato-Webspace installiert werden. Es funktioniert einfach nicht.

Stattdessen wird man mit Meldungen à la

Allowed memory size of 8388608 bytes exhausted …

hartnäckig und auf zweifelhafte Weise unterhaltsam erfreut.

Wenn einem das im Zuge eines Upgrades passiert, muss man den abgebrochenen Vorgang “sauber” wieder rückgängig machen - Das kostet Zeit, auch wenn man alle üblichen Vorsichtsmaßnahmen (wie Datenbank-BackUp) ordentlich ausgeführt hat. Und die Installation eines aktuellen Systems bleibt ein frommer Wunsch.

 

Die Lösung …

… ist überraschend einfach: Man schreibt sich seine eigene “php.ini” - und lädt sie in die betroffenen Ordner hoch. So kann man den Safe Mode ausschalten und die Speicherbeschränkungen für PHP-Skripte auf einen praxistauglichere Wert hochschrauben.

Folgende Vorgehensweise hat bei einer WordPress 2.2 Installation auf einem Strato “PowerWeb S”-Paket zum Erfolg geführt:

  1. Eine leere Text-Datei namens “php.txt” erzeugen, Inhalt:
    memory_limit = "16M"
    safe_mode = off
  2. Datei speichern und umbenennen in “php.ini”
  3. Datei hochladen in den Hauptordner
  4. Datei hochladen ins Verzeichnis “wp-admin”

 

Geht doch!

… und plötzlich funktioniert alles: WordPress 2.2 lässt sich installieren bzw. man kann von älteren Versionen upgraden - Und die Zeile define('ENABLE_CACHE', true); in der “wp-config.php” hat einen deutlichen Effekt. Außerdem kann man z.B. in diversen Erweiterungen zur Bild-Verwaltung direkt aus dem BackEnd heraus neue Ordner erstellen - und muss sich dazu nicht mehr via FTP verbinden.

Hinweis: Sowohl das Hauptverzeichnis als auch der Ordner “wp-admin” brauchen die wie beschrieben erstellte php.ini - Fehlt die Datei im Hauptverzeichnis, funktioniert das Caching nicht, fehlt die Datei im Admin-Ordner, funktioniert die gesamte WordPress 2.2-Installation nicht.

Eine echte “Rennmaschine” hat man so natürlich immer noch nicht ins Netz gestellt, aber die Seite sollte ein gutes Stück schneller weniger langsam geworden sein.

 

Ausblick

Mit den eigenen “php.ini”-Dateien kann man sicherlich auch anderen Systemen ein wenig auf die Sprünge helfen.

  • Ich denke da zum Beispiel an das Modul “XT-Imageprocessing” aus xt:Commerce, dem bei einer Speicherbeschränkung auf 8 MB ziemlich schnell die Puste ausgehen dürfte - Denn meistens sind’s ja etwas mehr als dreieinhalb Produktbilder, die bearbeitet werden wollen.
  • Der abgeschaltete Safe Mode erleichtert die Verwaltung von Dateien aus dem Admin-Bereich verschiedener Systeme erheblich - und macht einige Vorgänge überhaupt erst möglich.

Achtung: “safe_mode = off” ist jedoch auch ein Risiko-Faktor, den man nicht unterschätzen sollte. Insbesondere dann nicht, wenn man bei der Erweiterung und Anpassung seines laufenden Systems immer vom Safe Mode ausgegangen ist und sich um einige Berechtigungen nie wirklich Gedanken gemacht hat.