“无法在缓存目录中写入”(Symfony)

时间:2018-08-30 16:14:25

标签: php apache caching permissions symfony-3.4

我正在尝试将symfony 3.4应用程序部署到生产环境中,并且在完成所有配置后,当我访问索引页面时会发生此错误:

[Thu Aug 30 15:46:27.245613 2018] [php7:error] [pid 1748]  PHP Fatal error:  Uncaught RuntimeException: Unable to write in the cache directory ([...]/app/cache/prod)
 in [...]/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:755
 Stack trace:
 #0 [...]/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(633): Symfony\\Component\\HttpKernel\\Kernel->buildContainer()
 #1 [...]/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(137): Symfony\\Component\\HttpKernel\\Kernel->initializeContainer()
 #2 [...]/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php(197): Symfony\\Component\\HttpKernel\\Kernel->boot()
 #3 [...]/web/app.php(14): Symfony\\Component\\HttpKernel\\Kernel->handle(Object(Symfony\\Component\\HttpFoundation\\Request))
 #4 {main}
 thrown in [...]/vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php on line 755

app / cache和app / logs目录具有正确的权限,并且属于“ apache”用户(Centos 7服务器)。

所以,我不知道我在做什么错。有什么解决方案?

2 个答案:

答案 0 :(得分:1)

感谢您的回复MoxGeek。经过许多头痛之后,我解决了。问题不在于权限,而在于服务器配置。我用SELinux创建了一个Centos 7服务器实例,所以问题就在那里。

解决方案只是禁用SELinux。之后没有更多问题了! 非常感谢。

答案 1 :(得分:0)

您是否为您的应用程序/缓存和应用程序/日志授予了正确的权限? 也不要忘记清除缓存