В доступе для новых файлов php, загруженных пользователем ftp, отказано

Когда я пытаюсь загрузить php-файл с помощью vsftpd в / var / www / и зайти на файл с веб-сервера, я получаю эту ошибку,

Предупреждение: Неизвестно: не удалось открыть поток: в строке 0 отказано в доступе.

Неустранимая ошибка: неизвестно: не удалось открыть файл "/var/www/.../.../public_html/d.php" (include_path='.:/ Usr/share/php:/usr/share/pear') в Неизвестный в строке 0

я попытался chown -R www-data:www-data /var/www, после этого ошибка была исправлена, но я должен делать то же самое каждый раз, когда загружаю новый файл, есть ли способ исправить это для всех новых файлов?

1 ответ

Лучший способ - применить ACL к соответствующему каталогу.

Это установит значение по умолчанию, так что новые файлы и папки получат ACL, это говорит о том, что группа www-данных будет иметь права на чтение, запись, выполнение по умолчанию для всех файлов / папок из / var / www рекурсивно

sudo setfacl -Rdm g:www-data:rwx /var/www

Это установит ACL для существующих файлов и папок, это говорит о том, что группа www-данных будет рекурсивно читать, записывать, выполнять из / var / www для существующих файлов и папок.

sudo setfacl -Rm g:www-data:rwx /var/www
Другие вопросы по тегам