Этот вопрос здесь уже есть ответ:
У меня проблема с разрешением на моем выделенном веб-сервере, но я не могу понять, что Я ошибаюсь.
(все из официального репозитория, кроме ядра.Он взят из репозитория vivid)
Я установил apache2, и он начинается с пользователя www-data
Я установил виртуальный хост / home / USER1 / public_html
{{ 1}} (где владельцем является USER1: USER1)
, поэтому, если я установлю какую-либо CMS (например, joomla, wordpress или phpbb) , у меня будет много проблем с правами доступа, и я буду вынужден установить chmod на 777 ( OMG! Против здравого смысла), чтобы установить один из них.
"Стандартный" режим для этого типа CMS - это, насколько я понимаю, 755 для каталога 644 для файлов
Но если я установил эти разрешения, я ничего не смогу сделать с cms (установите что-нибудь или обновите его. Файлы будут считаться недоступными для записи). Та же проблема с 775
Итак, проблема в том, что моему веб-серверу нужны все разрешения для "OTHER", а не только для ПОЛЬЗОВАТЕЛЯ (или, по крайней мере, for GROUP)
Чтобы избежать этой проблемы, я добавил USER1 в группу www-data
usermod -a -G www-data USER1
, но файлы все еще недоступны для записи с 775 или 755. Единственный разрешенный режим по-прежнему 777 (OMG, ужасно писать его 2 раза в том же посте: D)
В чем проблема и как ее исправить?
Я решил проблему один
usermod -a -G USER1 www-data
chown -R USER1:www-data /home/USER1/public_html
chmod ug+s /home/USER1/public_html
, это не "лучший способ", но, лучше тогда используйте www-данные в качестве владельца и менеджера всего virtualhosts!!!