php - “无法写入缓存目录”(Symfony)
问题描述
我正在尝试将我的 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 服务器)。
所以,我不知道我做错了什么。有什么解决办法?
解决方案
感谢您的回复 MoxGeek。经过多次头痛后,我解决了。问题不在于权限,而在于服务器配置。我用 SELinux 创建了一个 Centos 7 服务器实例,所以问题就在那里。
解决方案就是禁用 SELinux。之后就没有问题了!非常感谢。
推荐阅读
- c# - 避免在datagridview中重复
- chef-infra - 如何在 Chef 中禁止覆盖食谱版本?
- python - How to remove HTML tags from a list of texts in Python
- asp.net - Request to AWS reveals internal server IP address
- c# - Asp.net Core 中的 Ajax 助手标签文档
- mysql - 加入来自同一个表 mysql knex 的其他结果
- ios - UIRefreshControl Selector 不调用目标 c
- sql - 检查与 SQL Server 2000/2005 的连接详细信息
- spring-boot - 为什么千分尺不会停止向 datadog 发送数据并已经关闭?
- apache-kafka - 如何知道何时在 Kafka 中提交记录?