Установил laravel на мою установку xampp в Ubuntu. открыл его в браузере. получил ошибку:

Не удалось открыть поток или файл / хранилище / журналы / журнал laravel: не удалось открыть поток: отказано в разрешении

Как исправить? (я уже нашел ответ, опубликую прямо сейчас)

-1
whyer 20 Апр 2019 в 06:37

2 ответа

Лучший ответ

Проблема в том, что пользователь, под которым работает apache, не имеет доступа к папке. в xampp на Ubuntu пользователь основного процесса apache - root. но работники Apache работают под daemon пользователем. решение состоит в том, чтобы предоставить daemon доступ к директории /storage. (если вы предоставите только /storage/logs, чем исправите эту ошибку, но такая же ошибка произойдет с дочерними каталогами. Таким образом, сама папка storage:

sudo chown -R daemon /path-to-your-project/storage

Теперь пользователь daemon имеет доступ к этой папке (а вам нет, но она вам нужна? Если у вас есть лучшие решения, пожалуйста, поделитесь ими здесь!

1
whyer 20 Апр 2019 в 03:43

Добавить в composer.json

    "scripts": {
    "post-install-cmd": [
          "chgrp -R www-data storage bootstrap/cache",
          "chmod -R ug+rwx storage bootstrap/cache"
     ]
}

Затем запустите composer install или update решите вашу проблему

0
Kumar Subedi 20 Апр 2019 в 04:28