未找到带有 App Engine 标准类“Facade\Ignition\IgnitionServiceProvider”的 Laravel
Posted
技术标签:
【中文标题】未找到带有 App Engine 标准类“Facade\\Ignition\\IgnitionServiceProvider”的 Laravel【英文标题】:Laravel with App Engine Standard Class 'Facade\Ignition\IgnitionServiceProvider' not found未找到带有 App Engine 标准类“Facade\Ignition\IgnitionServiceProvider”的 Laravel 【发布时间】:2020-01-24 23:34:48 【问题描述】:第二天这让我发疯了。我是 Laravel 的新手,并试图让 Laravel 6 在 Google App Engine Standard 上运行。 试过了:This tutorial等,还是加载Laravel索引页失败
我做了什么:
创建了新的 Laravel 项目
检查 Laravel 是否正在使用 php artisan serve
的本地主机上工作
使用php artisan key:generate --show
生成新密钥
创建了 app.yaml 文件:
runtime: php72
env_variables:
APP_KEY: iktbUa2quYPV2av3zDx0XAuEVjwzVQY/oMfyI2PQNKk=
APP_STORAGE: /tmp
VIEW_COMPILED_PATH: /tmp
SESSION_DRIVER: cookie
通过添加$app->useStoragePath(env('APP_STORAGE', base_path() . '/storage'));
修改bootstrap/app.php
冉composer remove --dev beyondcode/laravel-dump-server
还跑了:
php artisan cache:clear
,
php artisan route:cache
,
php artisan config:clear
,
php artisan view:clear
(按照其他教程的建议)
还有gcloud app deploy
我得到错误:“Class 'Facade\Ignition\IgnitionServiceProvider' not found”
【问题讨论】:
您是否在config/app.php [provider & alias]
中注册了您的提供商?
【参考方案1】:
如果您在将 composer 1.0 升级到 2.0 后遇到此问题。然后你可以按照这个步骤:
-
进入项目目录
运行作曲家安装
运行 composer dump-autoload
尝试运行
php artisan serve
它为我解决了
【讨论】:
我从 composer 1.x 升级到 composer 2.x 所以报告了这个问题。你的回答帮助了我。谢谢:) 谢谢。它也帮助了我。 它甚至可以在没有步骤 3 的情况下工作。谢谢【参考方案2】:请尝试
composer dump-autoload
它为我解决了
【讨论】:
这破坏了我的所有应用程序。 @KrishnaKarki 这只是确保您的依赖文件被正确地发现和加载。它不应该破坏你的应用程序,除非依赖项本身正确地破坏了你的应用程序,或者除非你的作曲家版本有差异(即用作曲家 v1 安装初始的 deps,用 v2 安装新的 deps 等)跨度> 【参考方案3】:带有“--no-dev”标志的应用引擎安装依赖项。如果您的应用程序处于调试模式并且有错误应用程序尝试通过“外观/点火”包呈现错误页面。
Solve-1:你可以在 composer.json 文件中将“facade/ignition”依赖从“require-dev”移动到“dev”
解决方案 2:您可以作为生产环境运行并使用错误的 APP_DEBUG 标志
【讨论】:
【参考方案4】:我也遇到过其他错误,其中大多数给了我错误 500 和
nginx: [warn] the "user" directive makes sense only if the master process runs with super-user privileges, ignored in /tmp/google-config/nginx.conf:3
在 Stackdriver Logger 中
我也不知道 App Engine 在构建时正在执行 composer.json(请参阅 Specifying Dependencies)。似乎问题在于它缓存了它。
所有问题已通过替换步骤 7 中的命令解决。:
gcloud app deploy
与 gcloud beta app deploy --no-cache
似乎如果我从一开始就按照tutorial 中的所有步骤完成所有步骤,我将不会有任何问题。
【讨论】:
【参考方案5】:试试
php artisan route:clear
你可以走了。
【讨论】:
【参考方案6】:我试试 作曲家更新 并且工作正常
【讨论】:
【参考方案7】:尝试运行
composer update
或
composer dump-autoload
【讨论】:
【参考方案8】:如果您在运行 phpUnit 测试时遇到此问题,请尝试清除引导文件夹的缓存。
【讨论】:
以上是关于未找到带有 App Engine 标准类“Facade\Ignition\IgnitionServiceProvider”的 Laravel的主要内容,如果未能解决你的问题,请参考以下文章
仅限本地的 App Engine 标准 Python3 处理程序错误