警告:file_put_contents():无法打开流:权限被拒绝

Mon*_*ona 5 php macos file filewriter

嗨,我是Mac和Web开发的新手..

这些天我试图用一个简单的HTML和Javascript格式做一个简单的网页,表格将由PHP处理.PHP将访问txt文件,读取和写入此txt文件.

错误消息来自此行代码.

file_put_contents("order.txt", $content);
Run Code Online (Sandbox Code Playgroud)

并且错误消息是

Warning: file_put_contents(order.txt): failed to open stream: Permission denied in /Users/maoyang/Sites/3006/process.php on line 57
Run Code Online (Sandbox Code Playgroud)

所有HTML和PHP代码都在我的计算机的myname/Sites/3006文件夹中.我做了一些研究,所有这些都告诉我,我需要更改一些配置以使txt文件可写,但真的很困惑如何这样做.任何人都知道我可以遵循的良好指令页面(对于mac环境).

非常感谢你..

Dan*_*one 12

在OSX上,Apache由_www用户运行.您需要确保此用户有权写入您要修改的文件.为此,请打开终端窗口并键入:

sudo chown -R _www:_www /Users/maoyang/Sites/3006
Run Code Online (Sandbox Code Playgroud)

请求时填写管理员用户密码.这会将/ Users/maoyang/Sites/3006文件夹的所有权更改为_www用户(运行Apache的用户),因此Web服务器将拥有该文件夹(以及所有子文件夹和文件)的写入权限

  • 是.只需将_www:_www替换为您的帐户用户名即可.如果问题只是对html/php文件进行了更改,您可以通过更改权限位掩码来解决它,例如:chmod -R 777*.php(在使用终端导航到文档根目录之后) (2认同)