Compilation Installation et configuration de eAccelerator
Optimiser et accélérer votre php grace à un cache et en éliminant la compilation.
eAccelerator est un logiciel open-source PHP accélérateur, il optimise le code et crée un cache du contenu dynamique. Il augmente les performances des scripts PHP. Il optimise également les scripts pour accélérer leur exécution. eAccelerator réduit la charge du serveur et augmente la vitesse de votre code PHP de 1-10 fois.
Le télécharger :
Prenez bien la dernière version stable.
cd /opt/SOURCES wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.tar.bz2
Installation :
tar xvjf eaccelerator-0.9.5.3.tar.bz2 cd eaccelerator-0.9.5.3
Maintenant passons à la .compilation.
./configure --enable-eaccelerator=shared --with-php-config=/opt/php/bin/php-config make make test make install
Configuration :
Copier ceci dans votre fichier php.ini :
zend_extension="/opt/php529/lib/php/extensions/no-debug-non-zts-20060613/eaccele
rator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
eaccelerator.allowed_admin_path = "/data/www/ea/"
Explications des differentes options disponibles :
eaccelerator.shm_size = "64"
Cette variable permet de définir la quantité de mémoire partagée à allouer à eAccelerator. Valeur par défaut : 0 qui correspond à la valeur par défaut du système d'exploitation.
eaccelerator.cache_dir = "/tmp/eaccelerator"
Répertoire dans lequel sont stockées les pages "cachées" de eaccelerator, pour Windows, le chemin doit être du type "C:pathtotmp".
eaccelerator.enable = "1"
Active ou désactive eAccelerator, 1 pour activé et 0 pour désactivé. Par défaut : 1.
eaccelerator.optimizer = "1"
Active ou désactive l'optimiseur de eAccelerator qui sert à augmenter les performances. 1 pour activé et 0 pour désactivé. Par défaut : 1.
eaccelerator.debug = "0"
Active ou désactive les logs de eAccelerator. Par défaut : 0.
eaccelerator.check_mtime = "1"
Active ou désactive le comparateur (basé sur la date) de eAccelerator. Si vous modifiez souvent vos scripts, donnez la valeur "1" à cette variable, sinon donnez-lui la valeur "0".
eaccelerator.filter = ""
Specifie les extensions de fichiers susceptible d'être mis en cache par eAccelerator. Exemple: ".php *.phtml". La négation de cette exemple est "!.php *.phtml" (notez le caractère "!" au début de l'expression. Valeur par défaut : "", en l'occurence, met en cache tous les fichiers php).
eaccelerator.shm_max = "0"
Spécifie la quantité de mémoire partagée maximale pour l'utilisation de la fonction "eaccelerator_put()". Exemple : 10240, 10K, 1M. Valeur par défaut : "0", en l'occurence, aucune limite de mémoire.
eaccelerator.shm_ttl = "0"
Quand eAccelerator a atteint sa limite de mémoire partagée, il enlèvera de cette mémoire tous les scripts qui n'ont pas été sollicités depuis "shm_ttl" seconde. Valeur par défaut : 0, en l'occurence, n'enlève aucun script de la mémoire.
eaccelerator.shm_prune_period = "0"
Quand eAccelerator a atteint sa limite de mémoire partagée, il essaiera d'enlever les scripts les plus vieux dont le code compilé a été créer il y a plus de "shm_prune_period" seconde. Valeur par défaut "0", en l'occurence, n'enleve aucun script de la mémoire.
eaccelerator.shm_only = "0"
Active ou désactive l'utilisation du disque pour le stockage des données (n'a aucun effet sur les données relatives aux sessions et le cache du contenu, on parle ici de code compilé intermédiaire). Valeur par défaut : "0", en l'occurence, l'utilisation du disque ET de la mémoire est autorisé.
eaccelerator.compress = "1"
Active ou désactive la compression du cache du contenu. Valeur par défaut : "1", en l'occurence, les données mises en cache sont compressées.
eaccelerator.compress_level = "9"
Specifie l'indice de compression utilisé pour le stockage des données mise en cache. Valeur par défaut : "9", en l'occurence, l'indice de compression maximum.
eaccelerator.keys = "shm_and_disk" eaccelerator.sessions = "shm_and_disk" eaccelerator.content = "shm_and_disk"
Specifie l'endroit où les clés, les données relatives aux sessions, ainsi que le contenu, sont stockées (disque ou mémoire). Liste des valeurs possibles : "shm_and_disk", stocke les données en mémoire et sur disque (valeur par défaut). "shm", stocke les données en mémoire ou sur le disque, si la mémoire est pleine, où si la taille des données est supérieur à "eaccelerator.shm_max". "shm_only", stocke les données en mémoire uniquement. "disk_only", stocke les données sur disque uniquement "none", aucun stockage des données.
La derniere ligne sert a créer une interface de gestion en php pour eAccelerator.
Création du repertoire de cache.
mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator
Copier ceci dans votre php.ini, utilisez find ou locate pour le trouver.
Arrivez la vous n'avez plus qu'a redémarrer votre serveur apache.
service httpd stop service httpd start
ou avec invoke-rc.d pour Debian ou Ubuntu.
Vérifier le fonctionnement de eAccelerator :
Une simple commande :
php -v Qui devrait vous donner quelque chose comme ça : PHP 5.2.9 (cli) (built: Mar 12 2009 18:58:49) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.2.0, Copyright (c) 1998-2009 Zend Technologies with eAccelerator v0.9.5.3, Copyright (c) 2004-2006 eAccelerator, by eAccele rator
Vous devriez aussi avoir quelques fichiers et dossiers dans /tmp/eaccelerator que nous avons créé plus haut (emplacement du cache).
Mettre e place l'interface gestion en php :
mkdir /var/www/ea cd /var/www/ea wget http://hosting.toshib.fr/staff/ea.txt mv ea.txt ea.php chown user-apache: ea.php vi ea.php
Dans ce fichier changez juste cette partie en mettant un user et un mot de passe :
/** config **/ $user = "eauser"; $pw = "password"; /** /config **/