zoukankan      html  css  js  c++  java
  • 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

    即可

    重启服务器

    再次写入文件正常

  • 相关阅读:
    linux 邮件服务器
    Nginx学习之keepalive
    explain 和 desc 详解
    mysql 常用语句
    loop设备及losetup命令
    cryptsetup文件系统加密
    ftp主动与被动模式详解
    大型网站关键技术
    大访问量网站架构设计
    Mysql 的事务隔离级别
  • 原文地址:https://www.cnblogs.com/lixihuan/p/8732762.html
Copyright © 2011-2022 走看看