Nous allons voir dans ce tutoriel des solutions pour optimiser la vitesse d’exécution de PHP, notamment à travers ce qu’on appelle un cache « op-code ». Il faut savoir en effet que PHP transforme votre script (programme) PHP en langage intermédiaire plus facilement assimilable pour l’exécution.

Installation de X-CACHE

On part toujours ici pour l’installation sur Debian mais l’installation sur les autres versions linux n’est guère différente et souvent aussi pratique. L’installation sur Debian est encore une fois fort simple, puisqu’il suffit d’exécuter la commande suivante :

apt-get install php5-xcache

Une fois fait, tout est déjà prêt puisque le fichier de configuration (xcache.ini) est normalement dans /etc/php5/conf.d/, si ce n’est pas le cas, tapez la commande :

locate xcache.ini

Copiez le fichier au bon endroit, vous pouvez ensuite éditer le fichier avec pico ou vi pour modifier quelques paramètres. Notamment la taille du cache à la ligne (xcache.size =), n’hésitez pas à mettre de l’espace si comme moi vous avez plusieurs Go de mémoire vive. Les autres paramètres sont aussi bien expliqués dans le fichier de configuration, de la sorte vous n’aurez pas trop de mal à paramètrer pour votre serveur mais par défaut tout fonctionne aussi très bien.

Reste à configurer l’accès à la page de contrôle, page WEB qui permet de voir un peu ce que fait le cache. Dans la partie [xcache.admin], en haut du fichier, vous trouverez des paramètres comme le nom d’accès et le mot de passe pour accéder à la page. Une astuce pour créer le mot de passe qui doit être indiqué en md5 :

echo -n motdepasse | md5sum

motdepasse est votre mot de passe personnel. Copier le résultat à la ligne xcache.admin.pass = et entre guillemets.

Une fois cela fait, il ne reste plus qu’à dire à Apache l’url d’accès à la page de contrôle en créant un Alias :

Alias /xcache-admin/ /usr/share/xcache/admin/

Options Indexes MultiViews
Deny from All
Allow from monIP

Attention car suivant la version, la page admin ne sera pas au même endroit (donc exécutez un locate xcache pour mieux savoir où se trouve cette page). Vous pouvez remplacer monIP par votre adresse IP si elle est fixe, sinon supprimez la ligne Deny from All et mettez Allow from All

Maintenant si vous tapez l’adresse de votre site www.monsite.com/xcache-admin vous aurez accès à la page avec toute les infos. Si vous pensez que Xcache ne fonctionne pas, vérifiez avec la commande php -v si Xcache est bien installé :

php -v
PHP 5.2.6-1+lenny13 with Suhosin-Patch 0.9.6.2 (cli) (built: Jul 1 2011 16:01:01)
Copyright (c) 1997-2008 The PHP Group
Zend Engine v2.2.0, Copyright (c) 1998-2008 Zend Technologies
with XCache v1.2.2, Copyright (c) 2005-2007, by mOo

Installation de APC

Ce deuxième choix de cache n’est pas à installer en même temps que Xcache, c’est l’un ou l’autre. Il existe deux méthodes pour installer APC, je vais prendre la plus simple, il semblerait d’ailleurs qu’APC sera intégré dans une prochaine version de PHP.

apt-get install php-apc

Il suffit ensuite d’éditer le fichier /etc/php5/conf.d/apc.ini qui normalement se trouve donc à cette place. Fixez la taille du cache et divers paramètres mais le défaut fonctionne aussi sans problème.

Vous pouvez facilement accéder à la page de contrôle de APC via un fichier apc.php que vous pouvez placer où bon vous semble. Tapez locate apc.php pour trouver le fameux fichier, s’il est compressé alors décompressez le.

Personnellement je préfère Xcache qui me semble plus stable qu’APC. C’est à votre goût !

Vous constaterez normalement si votre serveur est chargé en temps processeur et en requête une belle diminution de charge (% processeur). C’est toujours bon à prendre de moins consommer d’énergie !