Linux 部署thinkphp 遇到的file_put_contents failed to open stream: Permission denied

来源:互联网 发布:网络语言暴力案例图片 编辑:程序博客网 时间:2024/05/16 11:58

1、假设已排除权限和路径问题,那么很可能就是这个问题。

2、感谢csdn博主写下的这篇文章与 2013年02月21日 23:33:12 写下这篇  拯救

了我的文章,我的这个问题是无法mkdir 文件夹返回false,file_put_contents 说未开放流 被拒绝 是tp搞缓存文件时报的错,经过以下方法问题解决,这里改为了Permissive 仅记录错误,重启 是服务器重启。

 over! you begin :

一个浪费了我好几个小时的问题,原因却很简单。
一个简单的代码

[php] view plain copy
  1. $dir="temp";  
  2. mkdir($dir,0755);  

提示我permission denied.

我试了改父文件夹权限;重新创建文件夹,改权限再移动文件;更换文件夹的属主。统统不行。这个错误总也挥之不去。linux系统的基础不牢固的弱点体现出来了。

最终,在好友的一句提醒下,关闭了selinux。这个错误就消失了。

我的个天儿,我的宝贵的时间啊。

引以为戒。

不知道怎么关闭selinux?

在/etc/sysconf下有一个SeLinux文件,使用vi打开,更改其中的SELINUX项的值就可以了。
SELINUX=disable 禁用SeLinux
SELINUX=enforcing 使用SeLinux
SELINUX=Permissive 使用SeLinux,仅记录错误。

记得重启哈。

如果不重启的话,用# setenforce 0,可以把SELinux暂时设定成Permissive模式。记得用root用户。
再使用 # setenforce 1 这条命令会把SELinux设定成Enforcing模式


阅读全文
0 0