我在共享主机中的symfony项目上有一些错误

Vah*_*dam 0 php symfony

我是Symfony的初学者.我使用Symfony构建一个非常简单的项目,可以在localhost中正常工作.我将项目文件夹的所有内容上传到我的共享主机的根目录中,并将'web'文件夹上传到'public_html'文件夹.正确地将MySQL导入我在主机中创建的数据库并更改'parameters.yml'并更改数据库连接详细信息.将'/ var/logs /'和'/ var/cache'的chmod更改为777.但是当访问网站时会出现内部错误.

错误细节:

[24-Apr-2016 05:02:09 UTC] PHP Fatal error:  Uncaught exception 'RuntimeException' with message 'Session Storage was not able to create directory "D:\eventcalendar\app/../var/sessions/prod"' in /home/emusummit/var/cache/prod/classes.php:292
Stack trace:

#0 /home/emusummit/var/cache/prod/appProdProjectContainer.php(1898): Symfony\Component\HttpFoundation\Session\Storage\Handler\NativeFileSessionHandler->__construct('D:\\eventcalenda...')
#1 /home/emusummit/var/bootstrap.php.cache(2107): appProdProjectContainer->getSession_HandlerService()
#2 /home/emusummit/var/cache/prod/appProdProjectContainer.php(1937): Symfony\Component\DependencyInjection\Container->get('session.handler')
#3 /home/emusummit/var/bootstrap.php.cache(2107): appProdProjectContainer->getSession_Storage_NativeService()
#4 /home/emusummit/var/cache/prod/appProdProjectContainer.php(1885): Symfony\Component\DependencyInjection\Container->get('session.storage...')
#5 /home/emusummit/var/bootstrap.php.cache(2107): appProdProjectContainer->getSessionService()
#6 /home/emusummit/var/cache/prod/c in /home/emusummit/vendor/twig/twig/lib/Twig/Loader/Filesystem.php on line 94

问题是什么?请帮我.谢谢

Mic*_*bov 5

您可能没有清除缓存.

尝试通过运行命令清除缓存:

php bin/console cache:clear --env=prod
Run Code Online (Sandbox Code Playgroud)

或者,如果您使用dev-environment(它不适合生产服务器),您应该使用:

php bin/console cache:clear
Run Code Online (Sandbox Code Playgroud)

如果您无权访问shell,则可以通过从中删除具有环境名称的整个文件夹来手动清除缓存var/cache.对于prod环境,您应该删除var/cache/prod文件夹.

  • 在您的错误中,似乎文件夹权限也导致了错误,因此您应该为其授予 777 权限,以避免目录“/var/cache”、“/var/log”和“/var/session”出现这种情况 (2认同)