На днях обновлял VDS понял, что нет у меня шпаргалки по установке eAccelerator + memcached на VDS с сайтом на WordPress. Ничего особенно сложного, но когда делаешь раз в год, естественно ничего не помнишь и каждое движение приходится гуглить. Ну пусть здесь будет.

Вобщем что имеем:

  • VDS FreeBSD 8 с панелькой ISP Manager Lite от RuWeb
  • Apache ITK 2.22 + PHP 5.2 как модуль апача
  • Nginx 1.2.5
  • WordPress 3.3

Ставить будем из портов, соответственно порты при необходимости обновляем:

portsnap fetch update

Ставим eAccelerator

# cd /usr/ports/www/eaccelerator
# make install clean

Готовим для него директорию

# mkdir /var/tmp/eaccelerator
# chown www /var/tmp/eaccelerator
# chmod 0700 /var/tmp/eaccelerator

Сама директория, права и юзер может отличаться. Если всё ок, то после начала работы eAccelerator эта директория начнет заполняться. Если она будет пустой и, если не заданы параметры не сохранять на диск – значит что-то с папками не так.

В конец php.ini добавляем.

; eAccelerator
zend_extension="/usr/local/lib/php/20060613/eaccelerator.so"
eaccelerator.shm_size="64"
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="3600"
eaccelerator.shm_prune_period="1800"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

Настройки eAccelerator отдельная тема. Понаписано на эту тему не мало. У меня например здесь .

Теперь установим Memcache

# cd /usr/ports/databases/memcached
# make install clean

Добавляем в файл /etc/rc.conf

memcached_enable="YES"
memcached_flags="-l 127.0.0.1 -m 256"

Последняя строка – чтобы слушать только локалхост и сколько памяти не жалко.

# /usr/local/etc/rc.d/memcached start

Ставим модуль для PHP

# cd /usr/ports/databases/pecl-memcache
# make install clean

Перегружаем апач.

Сам по себе memcache это уже хорошо, nginx умеет с ним работать, например. Но лучше если memcache будет использоваться в скриптах, в моем случае это вордпресс. Для него есть плагин, который позволяет хранить объекты WordPress в memcache. Там написано как его устанавливать.

По идее в такой конфиге всё должно летать.

25 февраля 2013 |

Есть что сказать по теме статьи? Пожалуйста - пишите!