Я использую веб-сервер Apache, для которого установлен владелец _www:_www
. Я никогда не знаю, что лучше всего делать с правами доступа к файлам, например, когда я создаю новый проект Laravel 5.
Laravel 5 требует, чтобы папка /storage
доступна для записи. Я нашел много разных подходов, чтобы заставить это работать, и я обычно заканчиваю делать это 777
chmod рекурсивно. Я знаю, что это не лучшая идея.
Официальный документ говорит:
Laravel может потребовать настройки некоторых разрешений: папкам в
storage
иvendor
требуется доступ для записи через веб-сервер.
Означает ли это, что веб-серверу тоже нужен доступ к самим папкам storage
и vendor
или только к их текущему содержимому?
Я предполагаю, что, что намного лучше, это смена владельца вместо разрешения. Я рекурсивно изменил все права доступа к файлам Laravel на _www:_www
и это заставило сайт работать правильно, как будто я изменил chmod на 777
. Проблема в том, что теперь мой текстовый редактор запрашивает у меня пароль каждый раз, когда я хочу сохранить какой-либо файл, и то же самое происходит, если я пытаюсь что-то изменить в Finder, например, скопировать файл.
Как правильно подходить к решению этих проблем?
- Изменить
chmod
- Измените владельца файлов так, чтобы он соответствовал владельцам веб-сервера, и, возможно, настройте текстовый редактор (и Finder?), Чтобы пропустить запрос пароля или заставить их использовать
sudo
- Изменить владельца веб-сервера в соответствии с пользователем ОС (я не знаю, последствия)
- Что-то другое