AWS CakePHP-tmp目录需要可写

时间:2019-07-17 13:56:16

标签: php amazon-web-services cakephp tmp

我在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,但仍然没有运气。

错误日志显示的内容与刷新页面时无异。

3 个答案:

答案 0 :(得分:0)

更改目录的所有者。

for example
  chown nginx:nginx ../tmp
  chown apache:apache ../tmp

答案 1 :(得分:0)

找出问题所在。 SELinux已设置为强制执行

  

/ etc / selinux / config

将其设置为宽松,现在可以正常使用

答案 2 :(得分:0)

遵循 CakePHP

Installation Guide
HTTPDUSER=`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