升级到symfony 5后,我发现symfony错误处理程序的资产丢失警告:
php.WARNING:警告:include(/var/projekt/nakad/vendor/symfony/error-handler/ErrorRenderer/../Resources/assets/css/error.css(:无法打开流:没有这样的文件或目录{"exception":"[object](ErrorException(代码:0(:
在调查了这个问题后,我发现prod环境中缺少assets目录,而dev-env目录中存在css类。我认为css丢失了,因为该组件只是在require-dev中。
"require-dev": {
...
"symfony/browser-kit": "5.0.*",
"symfony/css-selector": "5.0.*",
"symfony/debug-bundle": "5.0.*",
"symfony/maker-bundle": "^1.13",
"symfony/phpunit-bridge": "^5.0",
"symfony/profiler-pack": "1.0.*",
"symfony/test-pack": "^1.0",
"symfony/var-dumper": "5.0.*"
},
env变量设置在.env.localAPP_ENV=prod
中由于缺少robots.txt和sitemap.xml,谷歌机器人程序显示了错误消息。这是已修复的,错误和警告已经消失,但我对此很好奇。
有人知道怎么解决这个问题吗?
通过深入研究堆栈跟踪找到了答案:
〔2020-04-16 23:33:35〕php。关键:未捕获异常:控制器的URI"/arobots.txt"不可调用。控制器"App\Controller\MyExceptionController"既不作为服务存在也不作为类。。{"exception":"[object](InvalidArgumentException(代码:…
这是对twig.yaml:中的弃用的暗示
之前:
分支:exception_controller:"App\controller\MyExceptionController"…
之后:
分支:exception_controller:null…