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

乐意黎在做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

发布了430 篇原创文章 · 获赞 415 · 访问量 925万+
展开阅读全文

没有更多推荐了,返回首页

©️2019 CSDN 皮肤主题: 编程工作室 设计师: CSDN官方博客

分享到微信朋友圈

×

扫一扫,手机浏览