Laravel 7 Неустранимая ошибка: Uncaught RuntimeException: не установлен корень фасада
Я просмотрел несколько ответов, предложенных по аналогичной проблеме, но в моем случае ничего не помогло. К вашему сведению, это мой первый проект в Laravel 7, который отлично работает на моем Mac. После этой статьи я развернул проект на своем сервере. При запуске проекта в сети я получаю следующую ошибку:
Неустранимая ошибка: Uncaught RuntimeException: не задан корень фасада. в /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:258
Трассировка стека: #0 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(425): Illuminate\Support\Facades\Facade::__callStatic('replaceNamespac...', Array) #1 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(402): Illuminate\Foundation\Exceptions\Handler->registerErrorViewPaths() #2 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(313): Illuminate\Foundation\Exceptions\Handler->renderHttpException(Object(Symfony\Component\HttpKernel\Exception\HttpException)) #3 /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Foundation/Exceptions/Handler.php(210): Illuminate\Foundation\Exceptions\Handler->prepareResponse(Object(Освещение \Http\Request),Объект (Symfony \ Component \ HttpKernel \ Exception \ HttpExcepti в /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php в строке 258
Как я могу это исправить?
5 ответов
Наконец я нашел решение, которое сработало в моем случае.
- удалить поставщика папки
- запустить "обновление композитора"
- запустите "php artisan config:cache"
- запустите "php artisan config:clear"
Теперь отображается домашняя страница, но маршруты не работают...
Это также происходит, когда в laravel есть некоторые ошибки на уровне php, например, в случае неопределенных констант в файлах конфигурации, пока приложение даже не загрузится. В моем случае в config/database.php у меня была «Неопределенная константа Redis::SERIALIZER_IGBINARY». Чтобы решить эту проблему, нам нужно установить модуль php redis, например, вместе с сериализатором igbinary.
Если решение от @Paul Godard не сработает, это может быть такая же проблема, как и моя.
Мои добавленные
psr/log
v2.0.0, для которого требуется php8 . Однако мое приложение находится на php7.4
Это дало мне точный вывод ошибки, как в описании
Fatal error: Uncaught RuntimeException: A facade root has not been set. in /usr/www/users/utopiqwvpw/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php:258
Мое решение заключалось в том, чтобы указать в
composer.json
что я использую
"psr/log": "^1.1.0"
Тогда беги
composer update
Я получил эту ошибку, когда моя папка конфигурации была удалена по ошибке. Итак, после восстановления папки config. Мой проект работал нормально. Вы должны проверить, удалена ли какая-либо папка, от которой зависит проект. Восстановите или скопируйте его. Тогда он будет работать нормально.
Я перепробовал все способы со всех форумов, но ни один из них не помог, наконец-то я решил проблему.
Просто переименуйте папку конфигурации в config_backup, скопируйте конфигурацию из нового проекта Laravel и вставьте ее в папку проекта, после чего она разрешится.