Установка правильного разрешения на файлы для любого веб-приложения является важной частью веб-хостинга.
Из этого руководства вы узнаете, как правильно настроить разрешения для файлов в приложении Laravel, размещенном на веб-сервере Linux.
Прежде всего, определите имя пользователя, под которым работает веб-сервер.
Вот несколько случаев по умолчанию:
- Nginx в Linux использует учетную запись – www-data
- Apache в системах Debian использует учетную запись – www-data
- Apache в системах Redhat использует учетную запись – apache
Мы предполагаем, что наш веб-сервер работает с учетной записью www-data.
Теперь рекурсивно измените владельца и владельца группы для всех файлов и каталогов.
sudo chown -R www-data:www-data /path/to/laravel
Теперь установите разрешение 644 для всех файлов и 755 для всех каталогов.
Выполните следующую команду.
sudo find /path/to/laravel -type f -exec chmod 644 {} \; sudo find /path/to/laravel -type d -exec chmod 755 {} \;
Для правильной работы Laravel необходимо предоставить разрешения на чтение и запись веб-серверу для хранилища, кэша и любых других каталогов.
Итак, выполните следующие команды:
cd /path/to/laravel sudo chgrp -R www-data storage bootstrap/cache sudo chmod -R ug+rwx storage bootstrap/cache
Теперь ваше приложение Laravel защищено соответствующими правами.
Но так как все файлы имеют владельца и группу-владельца на веб-сервере, вы можете столкнуться с проблемой во время изменений через FTP / sFTP
Чтобы решить эту проблему, добавьте своего пользователя в группу пользователей веб-сервера:
sudo usermod -a -G www-data ubuntu
Все сделано.
А зачем еще раз менять группу
sudo chgrp -R www-data storage bootstrap/cache
если мы рекурсивно уже назначили ее в начале статьи?