WordPress, не заливаются файлы.

Установлен WordPress на Nginx c PHP-Fpm. Не получается залить файлы, получаем ошибки:

"Unpacking the package… Could not create directory."
"Не могу создать директорию wp-content/uploads/"

Подразумевается что файл «php.ini» уже отредактирован, в nginx «client_max_body_size» выставлен в адекватное значение и это проблему не решило.

Есть советы товарищей, которые нам вовсе не товарищи, сделать права на каталог сайта 777, что делать крайне нежелательно из соображений безопасности. Хотя это и помогает. Но это костыль, а не решение проблемы. Корень проблемы в следующем:

Nginx работает под пользователем «nginx», соответственно на директорию с сайтом установлен владельцем именно этот пользователь и группа.

PHP-FPM по умолчанию работает под пользователем «apache». Именно поэтому у WordPress не хватает прав на создание и изменение директорий. По умолчанию группа nginx имеет права только на чтение директории, поэтому добавление пользователя «apache» в группу «nginx» нам не поможет.

Логичное решение проблемы — запускать PHP-FPM под пользователем «nginx». Редактируем «/etc/php-fpm.d/www.conf», находим строки «user = apache» и «group = apache». Меняем в обоих строках «apache» на «nginx», перезапускаем php-fpm, радуемся работающей загрузке файлов.

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

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


Срок проверки reCAPTCHA истек. Перезагрузите страницу.