Laravel 5.6 Uncaught RuntimeException: корень фасада не был установлен.в вендоре / laravel / framework / src / Illuminate / Support / Facades / Facade.php: 218 - PullRequest
0 голосов
/ 14 мая 2018

После установки Laravel 5.6 на PHP 7.1.8 (fedora 23) с помощью composer, когда я пытаюсь открыть URL в браузере, я получаю эту ошибку

PHP Fatal error:  Uncaught RuntimeException: A facade root has not been set. in vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:218\nStack trace:  
\n#0 vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(396): Illuminate\\Support\\Facades\\Facade::__callStatic('replaceNamespac...', Array)  
\n#1 vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(373): Illuminate\\Foundation\\Exceptions\\Handler->registerErrorViewPaths()  
\n#2 vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(288): Illuminate\\Foundation\\Exceptions\\Handler->renderHttpException(Object(Symfony\\Component\\HttpKernel\\Exception\\HttpException))  
\n#3 vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(187): Illuminate\\Foundation\\Exceptions\\Handler->prepareResponse(Object(Illuminate\\Http\\Request), Object(Symfony\\Co in vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php on line 218

Я установил Laravel с помощью composer, и при установке не было ошибок. Все каталоги имеют достаточные разрешения (я только что дал разрешение на запись в apache для каталогов, указанных в официальном руководстве по установке Laravel.)

Что мне сделать, чтобы исправить эту ошибку?

1 Ответ

0 голосов
/ 18 мая 2018

После долгих попыток я понял, что это проблема из-за SELinux, действующего в моей системе.SELinux не позволяет apache записывать нужные файлы.

$ /usr/sbin/getenforce
Enforcing

Я отключил SELinux, чтобы подтвердить это сомнение, и он работал правильно после отключения SELinux.Поэтому мне просто нужно было установить правильное разрешение для моего проекта, чтобы SELinux мог позволить apache записывать необходимые файлы.

$sudo chcon -t httpd_sys_rw_content_t /path/to/my/laravel/project/dir -R

Надеюсь, это поможет тем, кто сталкивается с той же проблемой.

...