【发布时间】: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 拥有,具体取决于我的尝试