【发布时间】:2019-06-01 00:03:12
【问题描述】:
我将一个 symfony 3.4 项目从我的本地机器 (Windows 10) 部署到基于 Ubuntu 的云服务器 (Digital Ocean)。
我花了 2 天时间试图解决这个(我认为)路由问题:
“request.CRITICAL:未捕获的 PHP 异常 Twig_Error_Loader...”
在本地,在带有 XAMPP 的 localhost 上,它可以完美运行。
项目在登录时运行正常(就像后端用户应用程序),注册正常但是当它尝试通过登录时,它需要加载包含一些包含的初始仪表板(如 nav_side.html.twig)并且服务器响应是错误 500。
我该如何解决?
非常感谢您的回复...我有点绝望。 :)
我更新作曲家,我删除了缓存文件夹,但错误仍然存在。
request.CRITICAL:未捕获的 PHP 异常 Twig_Error_Loader:“无法 找到模板“Backe ndBundle:includes:nav_side.html.twig” (查看:/var/www/onecup/app/Resources/views, /var/www/onecup/vendor/s
ymfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form) 在 第 7 行的“BackendBundle:Dashboard:index.html.twig”。 /var/www/onecup/vendor/twig/twig/lib/Twig/Loader/Filesystem.php 行 234 {“异常”:“[对象](Twig_Err or_Loader(代码:0): 找不到模板 \"BackendBundle:includes:nav_side.html.twig\" (查看:/var/www/onecup/app/Resources/views, /var/www/onecup/vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form) 在第 7 行的 \"BackendBundle:Dashboard:index.html.twig\" 中。 /var/www/onecup/vendor/twig/twig/lib/Twig/Loader/Fil
esystem.php:234)"} []
【问题讨论】:
-
您好 Mauricio,您是否已将相应的服务器文件配置为从公用文件夹中读取?您是否删除了 .env 或 .env.local 文件并在之前的配置文件中重新定位了其变量?
-
在开发中工作但在生产中工作的奇怪。继续验证this answer 不相关。当然,还要验证您的 views/includes 目录是否已上传。还要验证文件名大小写是否正确,因为 Windows 不区分大小写。而且“Backe ndBundle”中的空间似乎有点可疑,尽管我认为它是一种复制/粘贴之类的东西。
-
在生产环境中进行“作曲家更新”有点危险。您应该从您的开发机器上载 composer.lock 文件并使用“composer install”来确保您获得相同版本的第三方软件。另外确保 php 版本匹配。
-
@Mauricio 检查您的代码并尝试在目录/文件名中查找可能的大小写不一致。例如“文件”和“文件”。 Windows 文件系统不区分大小写,但 Ubuntu 文件系统区分大小写
-
找不到nav_side.html.twig,试试BackendBundle:includes\nav_side.html.twig