Мой DocumentRoot установлен в /var /workspace /www

drwxrwx--- 110 radek www-data 4096 Jul 11 11:34 www

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

Поскольку Apache работает под пользователем www-data:www-data, я попытался установить группу и права доступа:

sudo chgrp www-data www -R
sudo chmod 770 www -R

После того, как я это сделал, http://localhost начал показывать 403 - Запрещено. Похоже, что apache воспринимается как "прочее" (от владельца, группы, других) в словах разрешений.

Что я должен изменить (права доступа, владельцы и т.д.), Чтобы все файлы были видны и изменялись только для меня (пользователь radek) и выполнялись apache?

Как я вижу, есть один процесс Apache, работающий под root, и многие другие под www-данными.

radek@me:/$ ps -Af | grep apache
root     13165     1  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13173 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13174 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13175 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13176 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13177 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13190 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start
www-data 13194 13165  0 11:37 ?        00:00:00 /usr/sbin/apache2 -k start

Является ли первый процесс причиной проблем, описанных выше?

1 ответ1

0

Apache (и многие другие демоны) запускаются от имени пользователя root и затем переключаются на другого пользователя. это правильно. права пользователя 755 должны быть правы (владелец прочитал, записал и выполнил .. или 4 2 и 1 ... группа прочитала и выполнила ... а другие прочитали и выполнили)

ваши настройки 770 означает

владелец прочитал записать выполнить. группа прочитала написать и выполнить. у всех остальных ничего нет.

он всегда выдаст 403 при этих настройках.

если вы хотите, чтобы конкретный пользователь имел права на чтение и запись, вы должны назначить его этому пользователю.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .