Installation Alternativer PHP Cache APC Linux Ubuntu Plesk
Die Installation des „Alternativer PHP Cache“ (APC) ist eigentlich schnell erledigt. Da jedoch nicht jede im Internet verfügbare Lösung oder jedes HowTo zum Ziel führt, möchte ich hier einige Wege aufzeigen. Gerade unter Ubuntu/Plesk kann die Installation zu Problemen führen. Wie diese Probleme umgangen werden, zeige ich hier.
APC bzw. der Alterative PHP Cache ist ein freies PHP Modul, welches eine robuste Möglichkeit bietet, PHP Zwischencode zu cachen und somit die Zugriffszeiten einer dynamischen PHP-Seite massiv zu optimieren. Gerade Google scheint immer mehr darauf zu achten, dass eine Webseite möglichst schnell geladen wird. Das Stichwort hierzu lautet Page Speed. Da offensichtlich die Ladezeit einer Webseite sich auch auf den Google-Suchindex auswirken, müssen Webmaster inzwischen auch die Ladezeit im Auge behalten. Im Prinzip auch ein richtiger Ansatz. Kaum ein Leser möchte bei jedem Klick mehrere Sekunden auf den Aufbau der folgenden Seite warten. Im Zeitalter von Breitband-Anschlüssen und DSL verliert der Leser bei langen Wartezeiten schnell das Interesse an einer Seite.
Das PHP-Modul APC ist aktuell noch nicht im Basis-Umfang von PHP enthalten. Dies wird wohl – wie man im Internet lesen kann – sich in einer der folgenden Versionen ändern. Wohl aus diesem Grund ist das Interesse an diesem Cache sprunghaft gestiegen, ist es doch ein Garant, dass der Code dieses Caches von den Machern von PHP als valide angesehen wird. Aktuell müssen wir APC noch per Hand nachinstallieren. Prüfen Sie zuerst über eine PHPINFO(), ob das Modul APC auf Ihrem Server installiert ist.
Je nach Linux-Webserver-Installation führen unterschiedliche Wege zur Installation von APC Bytecode Cache. Im einfachsten Fall genügen die folgenden Zeilen:
# sudo aptitude install php-apc
# sudo /etc/init.d/apache2 restart
Leider wird gerade unter Plesk der Versuch wie folgt enden:
root@XXX:/usr/local/src/APC-3.1.8# apt-get install php-apc Reading package lists... Done Building dependency tree Reading state information... Done E: Couldn't find package php-apc
Wenn APC nicht als Paket vorhanden ist, müssen wir es manuell installieren. Zuerst besuchen wir die Seite http://pecl.php.net/package/APC und ermitteln die aktuellste Version sowie den Download-Link der aktuellen TGZ-Version. Hier in diesem Beispiel ist es die Version „APC-3.1.9.tgz”.
cd /usr/local/src wget http://pecl.php.net/get/APC-3.1.9.tgz tar xf APC-3.1.9.tgz cd APC-3.1.9/ phpize
Fehlermöglichkeit PHP: pecl install liefert „ERROR: ‚phpize‘ failed“
Wenn nach der Eingabe von „phpize“ die Fehlermeldung „ERROR: ‚phpize‘ failed“ erscheint, deutet dies darauf hin, das PECL nicht auf dem Server installiert wurde. Holen Sie dies nach:
apt-get install apache2-threaded-dev php5-dev php-pear make
Wenn der Befehl “phpize” keinen Fehler mehr liefert, können Sie wie folgt weitermachen:
./configure make make install
Nun ist APC erfolgreich installiert. Damit PHP dieses Modul auch läd und nutzen kann, muss es in der php.ini auch eingefügt werden. Hierzu können Sie folgenden Befehl nutzen:
echo „extension=apc.so“ >>/etc/php.ini
Je nach Installation hat PHP auch einen Ordner mit dynamischen Inhalten. Prüfen Sie, ob der Ordner
/etc/php5/apache2/conf.d
vorhanden ist. Wenn ja, kopieren Sie ein vorhandenes Ini-File und ändern den darin vorhandenen Dateipfad wie folgt ab:
extension=apc.so
Nach dieser Änderung müssen Sie den Apache Webserver neu starten:
/etc/init.d/apache2 restart
Plesk-Nutzer sollten den Neustart des Apache Webserver über die Weboberfläche von Plesk erledigen.
Prüfen Sie über eine PHPINFO(), ob PHP APC erfolgreich läd.