我的Symfony 3应用程序在我的本地Web服务器上运行完美。由于它安装在远程Web服务器上,它会产生一个空白页面,甚至路由也不起作用。在编辑 web/app.php$kernel = new AppKernel('prod', false);并将其设置为 true 后,应用程序按预期工作,不显示任何错误。为什么应用程序在本地和远程Web服务器上的行为不同。我错过了配置上的东西吗远程服务器?有什么建议吗?提前感谢!
$kernel = new AppKernel('prod', false);
cfh9epnr1#
由于我无法找出这个问题的真实的原因,我已经重新安装了我的应用程序,并更新了Symfony和 composer 的所有依赖项。虽然我对旧安装做了同样的事情,但这次它确实有用。我猜, composer 更新之前出了问题。再次感谢您的帮助!如果有人有类似的问题,我会很感激,如果你能张贴你如何解决这个问题(或为什么AppKernel 'prod'] = 'true'没有工作)。
bq8i3lrv2#
我有合理的解释,可能是什么问题。今年早些时候,我在使用Symfony 3时遇到了这个问题,当时我在Windows上进行开发,但手动部署(复制项目文件)到使用Linux的共享服务器上。就像你说的-prod环境中的空白页。
prod
log
dev
URL
app_dev.php
我不止一次地浏览了所有的文件,但是copy是正确的。答案过了一段时间,我在var目录中“偶然发现”了这个文件:bootstrap.php.cache。它“感觉很可疑”。由于我已经用尽了我的选项i just deleted it来测试结果。这解决了我的问题。网站又运行了。没有更多的空白页!我想混合开发环境是有代价的。
copy
var
bootstrap.php.cache
i just deleted it
mznpcxlj3#
很可能您的生产服务器设置为不显示任何错误,因此为了查看它们,您需要将其放置在index.php文件的顶部:
ini_set('display_errors', 1); ini_set('display_startup_errors', 1); error_reporting(E_ALL & ~E_DEPRECATED);
6tqwzwtp4#
最后我有一个解决问题的方法:在composer更新后,我必须通过执行rm -fr var/cache/prod/*手动清除prod环境的该高速缓存。无论出于何种原因,命令php bin/console cache:clear --env=prod在composer更新后立即退出工作,而不会抛出任何错误消息。手动删除该高速缓存文件后,应用程序和cache:clear命令都按预期工作,而无需修改 *web/app.php *。
rm -fr var/cache/prod/*
php bin/console cache:clear --env=prod
cache:clear
z4bn682m5#
1.检查缓存和日志目录的权限(必须是777)2.检查(粘贴在这里)错误在logs/prod.log
5条答案
按热度按时间cfh9epnr1#
由于我无法找出这个问题的真实的原因,我已经重新安装了我的应用程序,并更新了Symfony和 composer 的所有依赖项。虽然我对旧安装做了同样的事情,但这次它确实有用。我猜, composer 更新之前出了问题。再次感谢您的帮助!如果有人有类似的问题,我会很感激,如果你能张贴你如何解决这个问题(或为什么AppKernel 'prod'] = 'true'没有工作)。
bq8i3lrv2#
我有合理的解释,可能是什么问题。
今年早些时候,我在使用Symfony 3时遇到了这个问题,当时我在Windows上进行开发,但手动部署(复制项目文件)到使用Linux的共享服务器上。
就像你说的-
prod
环境中的空白页。log
文件没有显示任何问题dev
环境来检查错误URL
中添加app_dev.php
,应用程序将按预期工作我不止一次地浏览了所有的文件,但是
copy
是正确的。答案
过了一段时间,我在
var
目录中“偶然发现”了这个文件:bootstrap.php.cache
。它“感觉很可疑”。由于我已经用尽了我的选项
i just deleted it
来测试结果。这解决了我的问题。网站又运行了。没有更多的空白页!
我想混合开发环境是有代价的。
mznpcxlj3#
很可能您的生产服务器设置为不显示任何错误,因此为了查看它们,您需要将其放置在index.php文件的顶部:
6tqwzwtp4#
最后我有一个解决问题的方法:在composer更新后,我必须通过执行
rm -fr var/cache/prod/*
手动清除prod环境的该高速缓存。无论出于何种原因,命令php bin/console cache:clear --env=prod
在composer更新后立即退出工作,而不会抛出任何错误消息。手动删除该高速缓存文件后,应用程序和cache:clear
命令都按预期工作,而无需修改 *web/app.php *。z4bn682m5#
1.检查缓存和日志目录的权限(必须是777)
2.检查(粘贴在这里)错误在logs/prod.log