打开文件权限被拒绝。

4

当我尝试加载我的一个PHP页面时,出现以下错误:

[Fri Apr 08 22:59:50 2011] [error] [client ::1] PHP警告:fopen(tracking_id.txt):无法打开流:权限被拒绝,位于/var/www/basic.php的第61行

第61行是以下脚本中的第二行:

$ourFileName = "tracking_id.txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fwrite($ourFileHandle, $trackingId);
fclose($ourFileHandle);

有人知道如何解决这个问题吗?

我使用的是Ubuntu作为操作系统,apache作为Web服务器。

我使用tasksel安装了LAMP-server。

1个回答

8
创建一个名为tracking_id.txt的文件,并在其上执行以下命令:
chmod a+w tracking_id.txt

为什么这在我的线上服务器上不是问题,但在我的开发机器上却是问题呢? - oshirowanen
1
文件所在的文件夹在您的开发机器上具有与生产服务器不同的权限。可能情况是文件夹的所有者在一个案例中是Web服务器用户,但在另一个案例中是不同的用户,因此PHP无法创建新文件。 - dionyziz
1
我也遇到了同样类型的问题,但就像问题的 OP 一样,我不知道正在构建哪个文件,文件名是通过脚本生成的,并且必须在具有读写权限的文件夹下保留该名称的新文件,这些权限对所有者、组和其他用户都适用...... 你能帮我吗? - Starx

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接