Symfony 在错误的位置查找应用程序文件夹
Symfony looks for app folder in wrong place
我的 Symfony 3.3 应用程序在错误的位置查找应用程序文件夹。
我将 Symfony 3.3 项目部署到子域 (subdomain.domain.com)。服务器上的子域文件夹位置是:/home/USERNAME/public_html/PROJECTNAME
子域文档根目录为:/home/USERNAME/public_html/PROJECTNAME/web
这是正常的 Symfony 文件夹结构,没有任何变化。为什么它没有在正确的位置寻找应用程序文件夹?我错过了什么?
我得到的错误是:
request.CRITICAL: Uncaught PHP Exception Symfony\Component\Config\Exception\FileLocatorFileNotFoundException: "The file "/home/USERNAME/public_html/app/config/routing.yml" does not exist." at /home/USERNAME/public_html/PROJECTNAME/var/cache/prod/classes.php line 3040 {"exception":"[object] (Symfony\Component\Config\Exception\FileLocatorFileNotFoundException(code: 0): The file \"/home/USERNAME/public_html/app/config/routing.yml\" does not exist. at /home/USERNAME/public_html/PROJECTNAME/var/cache/prod/classes.php:3040)"} []
编辑:
我发现 composer.json 不在正确的文件夹中。我将其作为答案发布并接受了。
你应该在部署后 运行 bin/console cache:clear
命令。
那么AppKernel
中getCacheDir
方法的内容呢?
应该是:
return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
错误消息给了你线索,我不知道你是如何浏览你的网站的,但 Symfony 试图从你的根文件夹中找到文件,我猜你正试图以 domain.if 的方式浏览它是子域然后 URL 应该是这样的 SubDomainFolderName.DomainName
或者尝试使用 .htaccess
来解决这个问题
composer.json 文件需要在应用程序的根文件夹中。
我的 Symfony 3.3 应用程序在错误的位置查找应用程序文件夹。
我将 Symfony 3.3 项目部署到子域 (subdomain.domain.com)。服务器上的子域文件夹位置是:/home/USERNAME/public_html/PROJECTNAME 子域文档根目录为:/home/USERNAME/public_html/PROJECTNAME/web
这是正常的 Symfony 文件夹结构,没有任何变化。为什么它没有在正确的位置寻找应用程序文件夹?我错过了什么?
我得到的错误是:
request.CRITICAL: Uncaught PHP Exception Symfony\Component\Config\Exception\FileLocatorFileNotFoundException: "The file "/home/USERNAME/public_html/app/config/routing.yml" does not exist." at /home/USERNAME/public_html/PROJECTNAME/var/cache/prod/classes.php line 3040 {"exception":"[object] (Symfony\Component\Config\Exception\FileLocatorFileNotFoundException(code: 0): The file \"/home/USERNAME/public_html/app/config/routing.yml\" does not exist. at /home/USERNAME/public_html/PROJECTNAME/var/cache/prod/classes.php:3040)"} []
编辑:
我发现 composer.json 不在正确的文件夹中。我将其作为答案发布并接受了。
你应该在部署后 运行 bin/console cache:clear
命令。
那么AppKernel
中getCacheDir
方法的内容呢?
应该是:
return dirname(__DIR__).'/var/cache/'.$this->getEnvironment();
错误消息给了你线索,我不知道你是如何浏览你的网站的,但 Symfony 试图从你的根文件夹中找到文件,我猜你正试图以 domain.if 的方式浏览它是子域然后 URL 应该是这样的 SubDomainFolderName.DomainName
或者尝试使用 .htaccess
来解决这个问题composer.json 文件需要在应用程序的根文件夹中。