0
$handle = fopen('/Applications/XAMPP/xamppfiles/htdocs/test/file.txt', 'w');

我尝试执行上述操作,每次尝试时,我的浏览器上都会出现以下语句:

警告:fopen(/Applications/XAMPP/xamppfiles/htdocs/test/file.txt)[function.fopen]:无法打开流:第 26 行 /Applications/XAMPP/xamppfiles/htdocs/test/index.php 中的权限被拒绝.

我尝试用相同类型的问题查看已回答的问题,但我尝试的大多数事情都没有奏效。例如,写入完整目录...

4

3 回答 3

2

也许,您没有访问该文件的权限。答案之一是,您必须更改CHMOD为 eg 777。您可以将它与您的 ftp 浏览器或 PHP 一起使用。

chmod("/somedir/somefile", 777);
于 2013-08-09T05:44:42.580 回答
2

默认情况下,安装 XAMPP 时,htdocs 文件夹没有任何读取权限。您可以像这样通过终端更改权限。

cd /Application/XAMPP/xamppfiles/htdocs/test/
sudo chmod 0664 file.txt

或者,您可以递归设置所有文件和文件夹的所有权限级别

cd /Application/XAMPP/xamppfiles/
sudo chmod -R 0664 htdocs/
于 2013-08-09T05:51:18.107 回答
0

你可以这样chmod777,但这是有风险的安全性。我猜你真正想要的是更改文件的所有权。您可以使用chown. PHP 通常以 user 身份运行www-data,因此您会运行类似这样的命令。

sudo chown www-data:root path/to/file.ext

如果你对文件的文件权限是正常的664,那么会给 PHP 6 权限(读取和写入)而不是 4(只是读取)。

于 2016-11-03T20:11:39.640 回答