Правильный владелец/группа/разрешения для файлов/папок сайта Apache 2 под Mac OS X?
-
18-09-2019 - |
Вопрос
Трудно найти MAC-специфические ответы на этот вопрос в Интернете, поэтому я надеюсь, что кто-то там может поставить этот, чтобы отдохнуть для меня? Мои разрешения облажаются на моих сайтах, и я не уверен, как их исправить, просто не хлопнув рекурсивным 777 во всем, что явно неверно.
Спасибо!
Решение
Это самый ограничительный и безопасный способ, который я нашел, как объяснено здесь для гипотетических ~/my/web/root/
каталог для вашего веб -контента:
- Для каждого родительского каталога, ведущего к вашему веб -корню (например,
~/my
,~/my/web
,~/my/web/root
):chmod go-rwx DIR
(Никто, кроме владельца, не может получить доступ к контенту)chmod go+x DIR
(Чтобы позволить «пользователям», включая _www, «ввести» в режиме)
sudo chgrp -R _www ~/my/web/root
(Весь веб -контент теперь группа _www)chmod -R go-rwx ~/my/web/root
(Никто, кроме владельца, не может получить доступ к веб -контенту)chmod -R g+rx ~/my/web/root
(Весь веб -контент теперь читается/исполняется/вводится по _www)
Все другие решения оставляют файлы открытыми для других местных пользователей (которые являются частью группы «персонал», а также, очевидно, находятся в группе «O»/других). Эти пользователи могут затем свободно просматривать и получить доступ к конфигурациям DB, исходному коду или другим конфиденциальным деталям в файлах и сценариях веб -конфигурации, если они являются частью вашего контента. Если это не проблема для вас, то во что бы то ни стало, перейдите с одним из более простых решений.
Другие советы
Если вам действительно не нравится терминал, это то, что DKAMINS говорит вам:
1) Перейдите в домашний каталог пользователя (Людо будет моим) и из Файл Меню выберите Получить информацию CMDя в инспекторе:
2) Альт/опция Нажав на [+] знак добавить _www группируйте и установите разрешение на только для чтения :
- Таким образом, рассмотрим (хорошую практику) не хранить персональную информацию в корне папки домашней пользователя (и жесткого диска)!
- Вы можете пропустить этот шаг, если ** у всех ** у группы есть ** только для чтения **, но, поскольку папка **/public/drop ** ** В основном бесполезна ...
3) Покажите Получить информацию инспектор вашего пользователя Места Папка и воспроизвести шаг 2, затем из подменю действия, выберите «Действие» Применить к прилагаемым предметам ... :
Вуаля 3 шага и только графический интерфейс ...
Я знаю, что это старый пост, но для любого, кто переходит на горного льва (10.8) и испытывает подобные проблемы, добавляя FollowSymLinks
В ваш файл {username} .conf (в/etc/apache2/users/) сделал для меня трюк. Итак, файл выглядит так:
<Directory "/Users/username/Sites/">
Options Indexes MultiViews FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
2 -месячная тема, но лучше поздно, чем никогда! На 10.6 у меня есть папка Webserver Documents для:
owner:root
group:_www
permission:755
_WWW - это пользователь, который запускает Apache под Mac OS X. Затем я добавил ACL, чтобы разрешить полные разрешения в группу администраторов. Таким образом, я все еще могу внести какие -либо изменения с моим пользователем администратора, не вынуждая подлинности как root. Кроме того, когда я хочу позволить WebServer написать в папку, я могу просто chmod до 775, оставив всех, кроме корня: _www только с разрешениями чтения/выполнения (за исключением любых ACL, которые я применил)
В моей системе 10.6:
vhosts folder:
owner:root
group:wheel
permissions:755
vhost.conf files:
owner:root
group:wheel
permissions:644
Владелец пользователя для меня является пользователем администратора, а группа - _WWW и работает с разрешениями, установленными 775 для DIR и для файлов 664
Сначала откройте терминал, а затем перейдите в каталог веб -сервера
cd /Library/WebServer/Documents
а затем введите это, и что вы будете делать read
а также write
разрешение
sudo chmod -R o+w /Library/WebServer/Documents
Это обязательно сработает!