【问题标题】:Symfony Apache 2 : Unable to create the cache directory /var/cacheSymfony Apache 2:无法创建缓存目录 /var/cache
【发布时间】:2018-03-09 15:13:08
【问题描述】:

我知道这个问题已被多次报告,但我尝试了每一个解决方案,但似乎没有任何效果。

我在 Debian 9 Stretch 上运行 Symfony 3,但存在我无法修复的权限问题

cat /var/log/apache2/project_error.log

PHP 致命错误:未捕获的 RuntimeException:无法在 /var/www/mobileoutfitters.fr/public_html/vendor/ 中创建缓存目录 (/var/www/mobileoutfitters.fr/public_html/var/cache/prod)\n symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:676\nStack

/etc/apache2/envvars

export APACHE_RUN_USER=www-data
export APACHE_RUN_GROUP=www-data

我的用户实际上是该组的一部分。我尝试了所有可能的chown -R 777 命令,并且正如 Symfony 文档中所说,这两个命令:

HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\  -f1)

sudo setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var
sudo setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX var

我试图删除 var 文件夹,删除它的内容,清除缓存...但是还是这个错误。

【问题讨论】:

  • 检查目录的所有者,也许它的根目录和你的 www-data 不能在那里创建。
  • 目录归我的用户所有,或者由 www-data 拥有,具体取决于我的尝试

标签: symfony unix apache2


【解决方案1】:

原来我的 Symfony 数据库已创建但为空。

运行后:bin/console doctrine:schema:update --force 现在可以工作了

【讨论】:

    【解决方案2】:

    我也遇到过同样的问题,对我来说,在我使用 setenforce Permissive 在本地 Centos 虚拟机虚拟机上禁用 selinux 后它就可以工作了。

    【讨论】:

      猜你喜欢
      • 2013-12-06
      • 1970-01-01
      • 1970-01-01
      • 2015-01-02
      • 2013-11-06
      • 2015-10-21
      • 2020-03-17
      • 2020-02-09
      • 2017-01-04
      相关资源
      最近更新 更多