php fopen函数失败,php fopen函数返回false

使用yum安装的apache2.4.6   php 7.2.2  正确安装后使用fopen()函数打开文件时返回false

百度一下又三种原因

1、目录或者文件夹权限原因

(可以用   chmod -R 777 根目录      文件夹设置最高权限)

2、打开文件路径错误

3、打开方式错误(w,r,a)等

已确定不是上述错误

手动添加php错误报告

//error handler function

function customError($errno, $errstr){echo "Error: [$errno] $errstr";

}//set error handler

set_error_handler("customError");

返回的错误信息为

failed to open stream: Permission denied

证明没有权限

换成只读模式可以正常打开

猜想是php限制了权限

在php.ini中搜索 open_basedir 查看配置,默认是注释掉的,也就是说没有限制权限

最后在网上各种百度

发现centos系统中默认安装的有selinux 权限管理,并且是默认开启的

百度了一下selinux,介绍的好像大部分都是直接关闭的,配置起来好像很麻烦

那就还是关闭吧

vim /etc/selinux/conf

可以看到

SELINUX= enforcing

修改为

SELINUX=disabled

即可

重启服务器

再次写入文件正常

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值