per*_*000 7 php fopen file-permissions
由于这篇文章的标题几乎是不言而喻的,所以我将跳转到以下代码:
echo sprintf('%o', fileperms('test.txt'))."<br/>";
fopen("test.txt", "w");
Run Code Online (Sandbox Code Playgroud)
有了这个我得到:
100777
fopen(test.txt): failed to open stream: Permission denied
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
编辑:问题解决:服务器上有访问控制列表,配置不正确。
谢谢 !
我认为您可能对文件具有写/读权限,但对文件夹没有权限。在网站的公共根目录中尝试此操作,看看是否可以读取或写入文件。
对于安全模式(http://php.net/manual/zh/function.fopen.php),php doc表示以下内容:
注意:启用安全模式后,PHP会检查脚本运行所在的目录是否与正在执行的脚本具有相同的UID(所有者)。
最后,您还需要确保php可以访问您要写入的文件夹。