Сначала проверьте, работает ли php-fpm
в вашей системе, для этого вы можете использовать pgrep
, например:
# pgrep -fa php-fpm
5666 php-fpm: master process (/etc/php-fpm.conf)
5667 php-fpm: pool www
5668 php-fpm: pool www
5669 php-fpm: pool www
5670 php-fpm: pool www
5671 php-fpm: pool www
В этом случае он показывает, что он работает и использует файл конфигурации /etc/php-fpm.conf
. Прежде чем проверять файл конфигурации и пытаться проверить директиву listen =
, вы можете быстро просмотреть /proc/net/unix
, например:
# grep php /proc/net/unix
Что может вернуть что-то вроде:
ffff8800bfb2f400: 00000002 00000000 00010000 0001 01 28561 /tmp/php-fpm.sock
В этом случае он показывает, что путь к сокету php-fpm находится в /tmp/php-fpm.sock
, который можно проверить, проверив conf в /etc/php-fpm.d/www.conf
, в данном случае это: listen= /tmp/php-fpm.sock
Если вы не получили никакого результата и php-fpm
запущен и работает, проверив конфигурацию, вы можете обнаружить, что используются значения по умолчанию, указав TCP-сокет:
listen = 127.0.0.1:9000
Что-то, что вы могли бы изменить, чтобы прослушивать сокет Unix, например, предложенный вами conf:
listen = /var/run/php/php7.0-fpm.sock
В некоторых дистрибутивах Linux обычно используется:
listen.owner = www-data
listen.group = www-data
listen.mode = 0660
После изменения конфигурации не забудьте перезапустить службы systemctl restart php-fpm
. Чтобы убедиться, что сокет создан, вы можете:
$ file /var/run/php/php7.0-fpm.sock
Если сокет существует, следует распечатать что-то вроде этого:
/var/run/php/php7.0-fpm.sock: socket
person
nbari
schedule
01.08.2018