Как установить право собственности на веб-сервер
У нас есть внутренний сервер, на котором мы работаем с 3 пользователями. Это работает Ubuntu с Apache MySQL Proftpd
У нас часто бывают ошибки разрешения. Иногда мы не можем перезаписать файлы, но мы можем удалить их и т. Д. Что было бы хорошим способом настроить это. Кто должен быть владельцем файлов? (в настоящее время www-data:www-data).
3 пользователя должны иметь возможность удалять, записывать и читать файлы из веб-папок. Apache должен иметь все права для запуска Joomla.
2 ответа
Вы можете создать группу и добавить всех своих 3 пользователей в эту группу. Затем вы меняете владельца группы на эту новую группу и предоставляете группе полные разрешения. chmod g+rwx
,
Для пользователя apache в большинстве случаев требуется только доступ на чтение к файлам и доступ на чтение и выполнение к папкам. Вы можете установить владельца на www-data:www-data
для некоторых папок, например, для загрузки, которые требуют, чтобы пользователь apache писал в них.
Кто должен быть владельцем файлов?
НЕ ПОЛЬЗОВАТЕЛЬСКИЙ UID!!!!
Веб-серверу требуется доступ только для чтения к большинству файлов. В определенных каталогах могут быть обновляемые файлы, в зависимости от того, как настроен Joomla, но давайте сейчас не будем об этом беспокоиться.
Создайте группу для пользователей, которым нужен доступ для записи, скажем, webdev. Тогда (как корень):
cd $WEBROOT
find . -type d -exec chmod a+rx,o-w,g+ws {} \;
find . -type f -exec chmod a+r-x,o+r-w,g+ws {} \;
find . -exec chgrp webdev \;
Затем файлы могут быть прочитаны веб-сервером через "прочее", доступны для записи webdev через разрешения "group", и будут созданы новые файлы / каталоги, принадлежащие webdev.
Если вам нужно сделать определенные каталоги доступными для записи с помощью uid веб-сервера, то выполните chmod o+w их (и добавьте файл.htaccess / измените конфигурацию веб-сервера, чтобы предотвратить прямой доступ веб-сервера, если они находятся внутри корня документа).
И, пожалуйста, прекратите использовать FTP. Это несчастный случай, ожидающий случиться.