您的位置:首页 > 编程语言 > PHP开发

[乐意黎原创]PHP 写入文件时抛failed to open stream:Permission denied in 错误的解决方法

2017-08-25 16:50 946 查看
乐意黎在做ECS主机里 apache+php7 环境里, 写入json 文件时, 无意中抛Warning: fopen(./***.json): failed to open stream: Permission denied in /usr/local/apache/htdocs/****.php on
line 397 
can't open file

错误, 总是感觉很奇怪, 本机或其它远程机,一切正常呀.

1.无权限的处理方法

过程如下: 

如图: 


此处我是用: CuteFtp 工具来调整目录权限.

该目录的权限如图: 权限为 751. 此权限导致的无法写入



把该目录的权限调整为:  757



注: 也可以使用 unix 命令.

 1.  PHP应用程序一般针对Linux下的一般用户,目录应具有可读,可写,可执行权限(即777),文件根据相应操作,分配一般用户相应的权限
    eg: 文件放在/usr/local/使用出问题的目录/,名为: aerchi.json,文件操作为 'r+'
        目录a的权限: chmod 777 aerchi
         文件aerchi.json 的权限至少应为: chmod 006 aerchi.json
   2.  如果文件在/root/下,即使该文件及其所在目录都具有777的权限,也会出现Permission denied的错误提示

2. 另外, PHP.ini 调整时区

php7 里的 php.ini 文件里 大概 926 行左右

; Defines the default timezone used by the date functions

; http://php.net/date.timezone date.timezone = PRC



+

大功造成,  标记一下.

乐意黎原创

2017-08-25

原文地址: http://blog.csdn.net/aerchi/article/details/77575063
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐