• 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 "<b>Error:</b> [$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

    即可

    重启服务器

    再次写入文件正常

  • 相关阅读:
    1270. 数列区间最大值(climits用法+线段树模板题)
    JDBC&DBCP总结
    1264. 动态求连续区间和(树状数组模板题)
    788. 逆序对的数量(归并排序的应用)
    归并排序(模板题)
    ZoomEye技巧
    工具或安全监测网站(不定时更新)
    bp截包
    CTF/web
    CTF/stega——图片隐写
  • 原文地址:https://www.cnblogs.com/lixihuan/p/8732762.html
Copyright © 2020-2023  润新知