Сегодня мы в очередной раз сменили сервер проектов (а значит пришлось ставить и разворачивать заново большую часть ПО инфраструктуры), а так как меня частенько просят написать что-нибудь админское, то я кратенько распишу тут мануал по установке xCache на CentOS, используя SSH и консоль. Авось кому-то пригодится.
Предвкушая вопросы, - да, я считаю, что xCache на данный момент является оптимальным решением для проектов различной загруженности и уровня сложности (не считая OpCache, который может быть в некоторых случаях лучше). К тому же, последняя версия поддерживает PHP 5.5 и обрастает самым разными вкусняшками (функционалом), что не может не радовать.
Давайте приступим.
Всё достаточно просто:
- Переходим на сайт, - https://xcache.lighttpd.net/ - выбираем себе версию (на момент написания этого материала это было 3.2.0);
- Заходим в SSH и вводим по очереди (разбил на блоки, чтобы глаз не замыливался):
mkdir xch
cd xch
wget https://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.gz
tar xvfz xcache-3.2.0.tar.gz
cd xcache-3.2.0
phpize
./configure --enable-xcache
make
make install - Здесь, если вылезет ошибка) может потребоваться поставить gcc и yum install php-devel, если да, то ставим:
yum install php-devel
yum install gcc gcc-c++ make flex - Копируем конфиг в папку с конфигами:
cp xcache.ini /etc/php.d
- Перезагружаем httpd и nginx:
/etc/init.d/httpd restart
/etc/init.d/nginx restart - После перезагрузки вводим:
php -v
На выходе должно дать что-то такое:
PHP 5.4.40 (cli) (built: Apr 17 2015 12:43:48)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2014 Zend Technologies
with XCache v3.2.0, Copyright (c) 2005-2014, by mOo
with the ionCube PHP Loader v4.6.0, Copyright (c) 2002-2014, by ionCube Ltd.
with XCache Cacher v3.2.0, Copyright (c) 2005-2014, by mOo - Конфиг настраивается там, куда Вы его перенесли, т.е по пути /etc/php.d/xcache.ini
В двух словах как-то так.
Кстати, может быть конфликт с APC и другими кешами, так что их, возможно, придется отключить. О конфликте можно будет узнать по логам или выводу команды php -v
Если вдруг у кого-то будут разумные вопросы по делу, то добро пожаловать в комментарии.
Хе, я все "sudo", "sudo"... Забыло, что такое "yum" :)
Ну тут уж кому что.. :)
Обновил пхп на вдске на 5.5. Слетел старый xcache который нормально функционировал на 5.3. Как не пробовал со сборкой, ничего не выходит. Пакет может не собраться, и тогда попробовал ./configure --enable-xcache --with-php-config=/usr/bin/php-config. Тогда make test не выдаст ошибок, тем не менее после сборки и установки получаем segmentation fault после ввода php -v. Такие вот дела. Может подскажет кто-нибудь в чем проблема? Который час бьюсь уже. Если отключить при этом модуль xcache.so из конфига, то все нормально. Естественно, что рестарт апача вообще роняет весь пхп. Помогите, если сможете.