Le Forum Non Officiel de la DEDIBOX
Vous n'êtes pas identifié.
Eaccelerator est un logiciel qui permet d'accelerer les requêtes PHP.
Installation:
1) Mettez vous en Root sur SSH
2) Executer les commandes suivantes
cd / mkdir ea cd ea wget http://kent.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.3.tar.gz tar xvzf eaccelerator-0.9.3.tar.gz cd eaccelerator-0.9.3 export PHP_PREFIX="/usr" $PHP_PREFIX/bin/phpize ./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config make make install
Explication : Dans cette étapes nous avons d'abord crée un dossier pour Ea, nous avons ensuite télécharger la source, nous l'avons décompresser puis installer.
3) Edition du Php.ini
Cherche votre fichier php.ini (/etc/php.ini ou /etc/php4/apache2/php.ini)
Chercher
;Windows Extensions
Ajouter au dessus
extension="/ea/eaccelerator-0.9.3/modules/eaccelerator.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"
4) Création du dossier cache
Exectuer les commandes suivantes
mkdir /tmp/eaccelerator chmod 0777 /tmp/eaccelerator
5) Redémarrage de Apache
/etc/init.d/apache2 restart
Tuto réaliser par mes soins.
Hors ligne
Notons que ca impose d'avoir sur sa machine les outils de compilation et autres fichiers liés au développement php (php*-dev sous debian).
Hors ligne
Oui, cela va de soi, mais n'ai pas évidement pour tout le monde, bonne précision ![]()
Hors ligne
un autre petit truc un phpinfo(); dans une page php pour voir si ea est activé, soit on trouve une ligne du style with eaccelerator, soit avec une version 0.9.5 ou + carement une section contenant :
eAccelerator support enabled Version 0.9.5-beta2 Caching Enabled true Optimizer Enabled true Memory Size 16,777,176 Bytes Memory Available 16,771,140 Bytes Memory Allocated 6,036 Bytes Cached Scripts 1 Removed Scripts 0 Cached Keys 0 Directive Local Value Master Value eaccelerator.allowed_admin_path no value no value eaccelerator.cache_dir /tmp/eaccelerator /tmp/eaccelerator eaccelerator.check_mtime 1 1 eaccelerator.compress 1 1 eaccelerator.compress_level 9 9 eaccelerator.debug 0 0 eaccelerator.enable 1 1 eaccelerator.filter no value no value eaccelerator.log_file no value no value eaccelerator.name_space no value no value eaccelerator.optimizer 1 1 eaccelerator.shm_max 0 0 eaccelerator.shm_only 0 0 eaccelerator.shm_prune_period 0 0 eaccelerator.shm_size 16 16 eaccelerator.shm_ttl 0 0
Hors ligne
http://www.dedibox-news.com/viewtopic.php?id=650
Quelques essais pour ceux qui ne connaissent pas eAccelerator, APC ou les caches de bytecode en général.
Sinon, pour ceux qui veulent installer la 0.9.5b2 et qui veulent la gestion des sessions en RAM (session handler eaccelerator), il faut explicitement activer la fonction à la compilation en ajoutant --with-eaccelerator-sessions au configure (./configure --help pour les autres options).
En version 0.9.4 le support des sessions par eaccelerator est implicitement activé, donc pas nécessaire de le spécifier au ./configure.
Hors ligne
Autre élément, si vous avez besoin de plus d'espace mémoire pour vos différents scripts ou infos de session, il faut utiliser la directive de configuration eaccelerator.shm_size, dans php.ini.
Par exemple:
eaccelerator.shm_size = "64"
Pour que cela fonctionne, il faut que la taille demandée soit inférieure ou égale à la taille de segment de mémoire partagé configurée au niveau noyau.
node02:~# cat /proc/sys/kernel/shmmax 67108864
Ici, j'ai bien une taille de segment de 64Mo et du coup eaccelerator peut se lancer.
Pour modifier ce paramètre de façon temporaire (passage à 128Mo ici):
node02:~# echo 1311768576 > /proc/sys/kernel/shmmax ; cat /proc/sys/kernel/shmmax 1311768576
Ou de manière à ce que le paramètre soit restauré à chaque reboot, ajouter la ligne:
kernel.shmmax = 1311768576
dans le fichier /etc/sysctl.conf
Hors ligne
Pas besoin de recompiler PHP. Il faut par contre installer php4-dev et les outils de développement
Hors ligne
Salut a tous,
Au risque de passer pour un boulet,
J'ai un probleme sur Debian Sarge au moment de taper ceci :
./configure --enable-eaccelerator=shared --with-php-config=$PHP_PREFIX/bin/php-config
Je me retrouve avec cette erreur :
configure: error: no acceptable C compiler found in $PATH
Donc, je ne sais pas trop quoi faire..
J'ai bien installé php4-dev..
Merci par a avance
T'as bien un gcc qui traine ?
Hors ligne
Très sympa tout ça, je n'en ai pas spécialement besoin puisque je n'utilise pas des usines à gaz ni de templates à la smarty mais ça va me donner l'occasion de voir si mon code peut encore être amélioré.
Thx pour les tips et les benchmarks ! ![]()
Hors ligne
Calimero a écrit:
T'as bien un gcc qui traine ?
Je vient de faire un apt-get install gcc (car honnetement, je ne sais pas du tout ce que c'est :wacko:),
Et donc ce fameux gcc est installé, mais toujours la meme erreur.. ![]()
Edit : L'erreur a changé :
checking for C compiler default output file name... configure: error: C compiler cannot create executables
Re Edit :
apt-get install php4-eaccelerator /etc/init.d/apache restart
Dernière modification par Delta67 (2006-08-22 12:24:56)
Hors ligne
GCC = GNU C Compiler ou plus récemment GNU Compiler Compilation
Pour le apt-get install, faut avoir une repository qui propose le package.
Debian n'intègre pas eaccelerator pour des problèmes de licence.
Je suppose que tu l'as pris sur dotdeb ?
Hors ligne
Il trainait dans mon sources.list :+
Dernière modification par Delta67 (2006-08-22 14:55:42)
Hors ligne
AAAAAAARRRRRRRRRRRRRRRgggggggggggghhhhhhhhhhhhh
je n'ai pas de :
;Windows Extensions
J'ai mis les 14 lignes ailleurs dans le fichier .INI mais je ne vois pas de eaccelerator dans ma page PHP qui m'affiche un phpinfo ?
Vous auriez un autre repert pour insérer les 14 lignes ?
Merci
Michel
Hors ligne
Tu peux mettre les lignes liées à eaccelerator en fin de fichier.
La librairie est bien en place, dans le répertoire des extensions ?
Pas d'erreurs dans les logs d'apache lorsque tu le redémarres ?
La quantité de RAM pour eaccelerator configurée dans le php.ini est-elle cohérente avec la taille autorisée niveau noyau (cf plus haut) ?
Hors ligne
Une petite question, les fichiers contenus dans /tmp/eaccelerator/ sont supprimés au bout d'un moment ?
Hors ligne
Bonsoir!! je suis sous ubuntu et PHP5, mais cela n'a pas l'air de marcher!! J'ai une application php qui nécessite ce module, et impossible de l'installer, car il ne le détecte pas! Comment faire?
Quand je fais make, je vois des usr/include/php4/main partout!! Pourquoi il ne me met pas php 5?
Dernière modification par Black Dragon (2006-11-11 00:54:42)
Hors ligne
Quelle application ? Que ce passe t-il ? Quel message d'erreur pendant l'installation ?
Hors ligne
Je me permet d'ajouter ça : http://wiki.goldzoneweb.info/doku.php?i … ccelerator
:+
Hors ligne
Bonsoir, je me permets de remonter le sujet car je n'arrive pas à accéder à ma page control.php d'eaccelerator, et je ne le vois pas dans mon phpinfo. Pourtant, sous Putty l'install se passe correctement...
Nous sommes sous PHP5, avec Zend Engine et Zend Optimizer. Et nous utilisons Ubuntu.
Mon phpinfo détecte ma page eaccelerator.ini, mais ça s'arrête là... J'ai beau essayer de configurer là ou dans le php.ini, ça ne change rien. Je ne sais donc pas ce qui cloche et si l'installation est réellement complétée.
Merci d'avance ![]()
Hors ligne
Bonjour
j'ai suivi le tuto http://wiki.goldzoneweb.info/doku.php?i … ccelerator
j'ai bien eu
/usr/src/eaccelerator-0.9.5# make install
Installing shared extensions: /usr/lib/php5/20060613/
qui indique qu'il est bien installé mais dans phpinfo il n'est pas indiqué et pareil la page control.php me dit
eAccelerator isn't installed or isn't compiled with info support!
Voila ma config dans php.ini
extension=" /usr/lib/php5/20060613/eaccelerator.so" eaccelerator.shm_size = "16" eaccelerator.cache_dir = "/var/www/vhosts/eaccelerator" eaccelerator.enable = "1" eaccelerator.optimizer = "1" eaccelerator.check_mtime = "1" eaccelerator.debug = "0" eaccelerator.filter = "" eaccelerator.shm_max = "1M" eaccelerator.shm_ttl = "0" eaccelerator.shm_prune_period = "0" eaccelerator.shm_only = "0" eaccelerator.compress = "1" eaccelerator.compress_level = "9" eaccelerator.keys = "shm_and_disk" eaccelerator.sessions = "shm_and_disk" eaccelerator.content = "shm_and_disk"
Merci
Dernière modification par hawk88 (2007-11-18 12:24:17)
Hors ligne
Même problème
Hors ligne
petite mise a jour:
La version stable actuel est la 0.9.5.2
wget 'http://bart.eaccelerator.net/source/0.9.5.2/eaccelerator-0.9.5.2.tar.bz2' tar -xvjf eaccelerator-0.9.5.2.tar.bz2
pour ce qui ne trouve pas phpize un petit coup d'apt:
apt-get install php5-dev
Dernière modification par uriel (2007-12-26 19:48:08)
Hors ligne
hawk88 a écrit:
Bonjour
j'ai suivi le tuto http://wiki.goldzoneweb.info/doku.php?i … ccelerator
j'ai bien eu
/usr/src/eaccelerator-0.9.5# make install
Installing shared extensions: /usr/lib/php5/20060613/
qui indique qu'il est bien installé mais dans phpinfo il n'est pas indiqué et pareil la page control.php me diteAccelerator isn't installed or isn't compiled with info support!
Voila ma config dans php.ini
Code:
extension=" /usr/lib/php5/20060613/eaccelerator.so" eaccelerator.shm_size = "16" eaccelerator.cache_dir = "/var/www/vhosts/eaccelerator" eaccelerator.enable = "1" eaccelerator.optimizer = "1" eaccelerator.check_mtime = "1" eaccelerator.debug = "0" eaccelerator.filter = "" eaccelerator.shm_max = "1M" eaccelerator.shm_ttl = "0" eaccelerator.shm_prune_period = "0" eaccelerator.shm_only = "0" eaccelerator.compress = "1" eaccelerator.compress_level = "9" eaccelerator.keys = "shm_and_disk" eaccelerator.sessions = "shm_and_disk" eaccelerator.content = "shm_and_disk"Merci
Il faut remplacer
extension=" /usr/lib/php5/20060613/eaccelerator.so"
Par
extension=eaccelerator.so
Hors ligne