Ошибка error connect to php5-fpm.sock failed (13: Permission denied)

  • 09.05.2016
  • 7 274
  • 1
  • 21.06.2022
  • 6
  • 4
  • 2
Ошибка error connect to php5-fpm.sock failed (13: Permission denied)

Не смотря на то, что "связка" nginx + PHP уже перестала быть какой-то диковинкой, во многих дистрибьютивах взаимодействие данных программ не налажено должным образом. Ниже - пример типичной ошибки после установки nginx и php-fpm.

Описание ошибки

Если при попытке зайти на вебсервер под управлением nginx браузер выдает код ошибки 502 (Bad gateway), а в логах пишется примерно следующее:

connect() to unix:/var/run/php5-fpm.sock failed (13: Permission denied) while connecting to upstream

то скорее всего проблема кроется в файле настроек PHP.

Исправление ошибки

Для исправления ошибки нужно открыть /etc/php5/fpm/pool.d/www.conf, и в нем найти следующие строчки:

;listen.owner = www-data
;listen.group = www-data
;listen.mode = 0660

и убрать комментарии в виде точки с запятой (если они конечно же там есть). В итоге все должно выглядеть так:

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

Сохраняем файл конфига, и все что теперь осталось нужно, это перезапустить службу php-fpm (ниже приведены различные примеры для различных версий)

Для PHP5:

/etc/init.d/php5-fpm restart
systemctl restart php5-fpm

Для PHP7:

systemctl restart php7.0-fpm

Если же проблема не решилась, то следует проверить под каким пользователем работает веб-сервер nginx. Для этого стоит открыть его конфиг, который расположен по адресу /etc/nginx/nginx.conf. Ищем параметр user, он может выглядеть примерно вот так:

user nginx;

Исходя из этого, можно понять, что веб-сервер работает под пользователем nginx, а php5-fpm - под пользователем www-data. Решением такой проблемы может выступить смена пользователя, под которым работает nginx. Для этого, меняем в конфиге /etc/php5/fpm/pool.d/www.conf www-data на nginx, и перезагружаем php5-fpm.

/etc/init.d/php5-fpm restart
Была ли эта статья Вам полезна?

Комментарии к статье (1)

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Напоминаем Вам, что Ваше сообщение будет опубликовано только после проверки администратором сайта. Обычно это занимает 1-2 рабочих дня.