Laravel 5 — env ​​local debug true без ошибок

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

Среда настроена на локальную (в файле .env), и если я запустил

php artisan env

Я понял

Current application environment: local

Конфигурация отладки для моего локального env установлена ​​в true

return [

'debug' => true,

Также, если я установлю в своем основном конфигурационном файле (app.php внутри папки config) debug = true У меня еще есть отзывы о том, что в коде есть ошибка.

У меня есть только пустая страница, если в коде есть ошибка (как для debug = false)

Что мне не хватает?

27

Решение

Я работал над этим вопросом chmod -R 777 storage/ на моем хост-компьютере (Mac OS X). На моей гостевой машине (Ubuntu 14.04) chmod -R 777 storage/ не менял разрешения на самом деле.

77

Другие решения

php artisan optimize и если он все еще не работает, удалите файл storage/meta/compiled.php как упоминалось в тема форума на Laracasts

У меня была такая же проблема и artisan Команда сделала свое дело.

ОБНОВИТЬ

Я обнаружил, что хорошим способом решения проблем, связанных с папками хранилища, является установка www-data в качестве его владельца.
Я использую две команды:

sudo chown $(whoami):www-data . -R

а также

sudo chown www-data: storage -R

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

12

У меня была ситуация, когда у меня был точно такой же симптом, некоторые маршруты не давали никакой обратной связи, просто белая страница, никаких ошибок в журнале, никакой информации вообще.

Оказывается, я добавлял новое промежуточное ПО, и я забыл вернуться $next($request) из моего метода ручки. Это было еще более неприятно, потому что это промежуточное программное обеспечение не применимо к каждому маршруту, поэтому я предположил, что возникла периодическая ошибка, которая выдается, но не отображается на этих маршрутах.

3

Как сказал Блэр, может оказаться, что вы вставили какой-то неправильный код в промежуточное ПО или в «Exceptions / Handler.php», например. :

if($e->getStatusCode()===404) { ... }

вместо

if($e instanceof NotFoundHttpException) { ... }

3

Даже на Windows нужно сделать: chmod -R 777 storage/
Вы можете запустить его с помощью Git Bash;

1

Просто для полноты, у меня была эта проблема, когда ошибка произошла в методах, которые использовали Model::findOrFail($someId), Заменить его на Model::find($someId) отображается журнал ошибок.

1

Если приведенные выше ответы не помогли вам, вы можете проверить конфигурационные файлы, которые вы могли изменить, и начать отладку оттуда.

В моем случае вышеупомянутые решения не работали для меня, потому что основной причиной моей проблемы было изменение часового пояса в файле config / app.php (с UTC для laravel по умолчанию я изменил его на EST5EDT). По какой-то причине изменение настроек часового пояса не позволяет laravel регистрировать ошибки в папке хранилища, и я получаю пустой экран (нет сообщений об ошибках!). Вместо этого я изменил часовой пояс на America / New_York, и журналы ошибок снова работают.

Надеюсь это поможет.

0

Для меня то, что отлично работало, это отключение hhvm в Homestead.yaml файл, то я сделал Бродячая перезагрузка и это было все!

0
По вопросам рекламы [email protected]