В этой статье расскажу, как я ставил себе на сервер eAccelerator. Сервер работает на debian 7 wheezy. До этого ставил xcache, APC, но все они с треском провалились.. Так как на сервере много разных сайтов на разных системах, то получается, что при идеальной работе одного начинает лагать другой. В общем про установку:
Вначале необходимо установить пакеты, которые понадобятся для установки и правильной работы eAccelerator:
apt-get install build-essential php5-dev
После желательно перейти в папку /tmp на сервере:
cd /tmp
Теперь можно скачать в эту папку eAccelerator c github.com
wget https://github.com/eaccelerator/eaccelerator/zipball/master
Если у вас в папке tmp появился файл master, а не eaccelerator-eaccelerator-42067ac.zip — переименуйте его.
Затем распакуйте:
unzip eaccelerator-eaccelerator-42067ac.zip
После нужно перейти в появившуюся папку eaccelerator-eaccelerator-42067ac (это актуально на момент написания статьи, название файла и папки будет меняться с выпуском новых версий):
cd eaccelerator-eaccelerator-42067ac
И далее уже начинаем собирать пакет в консоли, прописав:
phpize ./configure make make install
eAccelerator установлен, но для того чтобы он заработал надо создать файл конфигурации:
nano /etc/php5/conf.d/eaccelerator.ini
И прописать в нем:
extension="eaccelerator.so" eaccelerator.shm_size="32" eaccelerator.cache_dir="/var/cache/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"
Так же нужно создать папку для кеша и поставить ей права на запись:
mkdir -p /var/cache/eaccelerator chmod 0777 /var/cache/eaccelerator
И перезапустить веб-сервер Apache:
/etc/init.d/apache2 restart
После этого все должно работать, как часики и нагрузка на сервер должна сократиться в несколько раз. Сам пока тестирую, только первые сутки пошли, как установил))
После установки на Debian с панелью Plesk сайты не грузятся и такая ошибка, и апач лег:
Из-за ошибок в шаблонах конфигурации не удалось создать новые конфигурационные файлы для веб-сервера Apache: Can not restart web server: httpd stop failed 1 /usr/sbin/apache2 processes are killed 0 ../lib/apache2/mpm-prefork/apache2 processes are killed httpd stop failed 1 /usr/sbin/apache2 processes are killed 0 ../lib/apache2/mpm-prefork/apache2 processes are killed . Подробное описание ошибок было отправлено на ваш почтовый ящик. Пожалуйста, устраните эти ошибки и нажмите здесь, чтобы заново создать поврежденные конфигурационные файлы, или здесь, чтобы создать все конфигурационные файлы.
Что делать?
Без понятия.. С plesk дела не имел, не подскажу. Смотрите логи, пытайтесь найти причину. Я не сисадмин 🙂
Супер. Все сработало, а то первый раз установил криво, и на всех сайтах посыпались ошибки
Спасибо, все подробно и понятно. Я все сделал. После чего узнал что он несовместим с то ли с Fast-CGI то ли с моей панелькой ISPconfig. Кароче лежит панель и сайты на Fast-CGI. Как удалить eAccelerator установленный таким способом?
rm /etc/php5/conf.d/eaccelerator.ini
К сожалению, не удалось побороть проблему прав на папку кеша — пришлось отключить пока.
О такой проблеме ранее не слышал.. С удалением я так понял вы разобрались.
Установил по описанию, все работает хорошо: скорость загрузки страниц + 20-50 %. Решил подредактировать shm_size, изменил с 32 на 64 — сайт не работает, изменил на 16 — нормально. Не пойму, почему не получается увеличить память — больше 32х ?
Ответ нашел на серче.
Здравствуйте!
Я впервые настраиваю vds, vds с такими параметрами: CPU cores 1 × 2.4Ghz @ 60%, Memory 512 Mb, debian 7.
Сайт 1, страниц в идексе google около 30 000, на сайте несколько компонентов.
Подскажите, сколько мне выделить kernel.shmmax, и нужно ли мне изменять shm_size?
Статья полезная и вариант рабочий, что для debian 7 довольно редко.
Расскажите как настроить кеширование статических файлов , у меня nginx + apache. Пробовал настраивать по описаниям с других сайтов – не получилась. Это пока единственная статья, по которой все заработало с 1 раза и с хорошими результатами.
Я думаю на Вашем сайте достаточно будет shm_size 64, ну и соответственно kernel.shmmax 67108864
По настройке nginx и apache не могу помочь, сам не профессионал. Все делал по описанию на других сайтах, получилось далеко не с первого раза.. Ищите еще, читайте или как вариант наймите системного администратора, чтоб один раз все хорошо настроил.
1.Прописываем в конец файла /etc/sysctl.conf строчку: kernel.shmmax=67108864
проверяем sysctl -p
kernel.shmmax=67108864
2. Изменяем shm_size на 64