Добавления модуля memcache: различия между версиями
Misha (обсуждение | вклад) (→php fpm) |
Misha (обсуждение | вклад) (→php fpm) |
||
Строка 15: | Строка 15: | ||
Пакет, входящий в дистрибутив не работает с php 7.X, поэтому устанавливаем через pecl | Пакет, входящий в дистрибутив не работает с php 7.X, поэтому устанавливаем через pecl | ||
На машине, где установлен PHP fpm | На машине, где установлен PHP fpm | ||
− | <pre>sudo apt-get -y install gcc make autoconf libc-dev pkg-config php7.2-dev php-pear | + | <pre>sudo apt-get -y install gcc make autoconf libc-dev pkg-config php7.2-dev php-pear php7.2-dev |
sudo apt-get -y install zlib1g-dev | sudo apt-get -y install zlib1g-dev | ||
sudo apt-get -y install libmemcached-dev | sudo apt-get -y install libmemcached-dev | ||
− | sudo | + | sudo pecl install memcached |
</pre> | </pre> | ||
Создаем файл /etc/php/7.2/mods-available/memcached.ini | Создаем файл /etc/php/7.2/mods-available/memcached.ini |
Версия 09:01, 29 июня 2018
Данные сессии, особенно, если у нас два сервера nginx, нужно хранить в одном месте. И для этого можно использовать memcache.
Установка и настройка пакетов
Сервис memcache
На машине, где будет стоять сервис memcache
$ sudo apt install memcached
Если memcached установлен на том же сервере, что и php fpm, настраивать ничего не надо.
Если на другом, редактируем файл /etc/memcached.conf
-l ip_addr_memcashed_service
ip_addr_memcashed_service - это ip адрес сервера, на котором установлен memcached.
Перезапускаем сервис memcached
$ sudo service memcached restart
php fpm
Пакет, входящий в дистрибутив не работает с php 7.X, поэтому устанавливаем через pecl На машине, где установлен PHP fpm
sudo apt-get -y install gcc make autoconf libc-dev pkg-config php7.2-dev php-pear php7.2-dev sudo apt-get -y install zlib1g-dev sudo apt-get -y install libmemcached-dev sudo pecl install memcached
Создаем файл /etc/php/7.2/mods-available/memcached.ini
; priority=25 extension=memcached.so
И десаем ссылку на этот файл
sudo ln -s /etc/php/7.2/mods-available/memcached.ini /etc/php/7.2/fpm/conf.d/20-memcached.ini
Редактируем файл /etc/php/7.2/fpm/php.ini
было
[Session] ; Handler used to store/retrieve data. ; http://php.net/session.save-handler session.save_handler = files
Стало
[Session] ; Handler used to store/retrieve data. ; http://php.net/session.save-handler ;session.save_handler = files session.save_handler = memcached session.save_path = "ip_addr_memcashed_service:11211"
Где session.save_path - это адрес и порт сервера, где установлен сам сервис memcache.
Перезапускаем сервис php fpm
$ sudo systemctl reload php7.2-fpm
Настройка фаервола
Не забудьте, если у Вас есть фаервол, настроить его для принятия пакетов с сервера memcached.