我在AWS上设置了一个服务器,并且已将应用程序部署到该服务器上,就像我在其他服务器上做了很多次一样。 将core.php调试设为2后,显示以下错误
警告:/var/www/html/XXX/XXX/lib/Cake/Cache/Engine/FileEngine.php中无法写入/ var / www / html / XXX / XXX / app / tmp / cache / persistent /在第389行
这是我每次从git中提取代码时都会收到的常见警告。
像往常一样我跑步
chmod -R 777 tmp
我仍然收到警告,直到我解决它,我才继续进行操作!
我试图重命名tmp文件夹
mv tmp tmp1
我明白了
mkdir():/var/www/html/XXX/XXX/lib/Cake/Cache/Engine/FileEngine.php中第384行的权限被拒绝
当您的应用程序文件夹中没有tmp文件夹时,将显示警告。
我也尝试将文件夹用户组更改为apache:apache,但仍然没有运气。
错误日志显示的内容与刷新页面时无异。
答案 0 :(得分:0)
更改目录的所有者。
for example
chown nginx:nginx ../tmp
chown apache:apache ../tmp
答案 1 :(得分:0)
找出问题所在。 SELinux已设置为强制执行
/ etc / selinux / config
将其设置为宽松,现在可以正常使用
答案 2 :(得分:0)
遵循 CakePHP
的Installation GuideHTTPDUSER=`ps aux | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' |
grep -v root | head -1 | cut -d\ -f1`
setfacl -R -m u:${HTTPDUSER}:rwx tmp
setfacl -R -d -m u:${HTTPDUSER}:rwx tmp
setfacl -R -m u:${HTTPDUSER}:rwx logs
setfacl -R -d -m u:${HTTPDUSER}:rwx logs