文件...无法打开流:权限被拒绝

时间:2013-02-07 02:17:05

标签: php permissions fopen

我正在为一个客户端处理一个站点,我在我的服务器上克隆了整个站点,它似乎工作正常。 既然我已经将网站复制到他的服务器并试图付款(使用paypal pro)我得到了一个权限错误:

`Warning: error_log(../PayPal.log) [function.error-log]: failed to open stream: Permission denied`

我已尝试将所有权限更改为777,此错误不断出现。

我已经环顾四周,在谷歌和这里我看到它可能与php设置(safemodeopen_basedir)有关但当我检查phpinfo()时似乎safemod已禁用且open_basedir为空。

有想法的人吗?

1 个答案:

答案 0 :(得分:3)

<强>更新

添加任何虚拟主机(甚至单个主机)时,必须在Apache中设置DocumentRoot。 该指令告诉apache在哪里查找文件并映射网站的根目录。

DocumentRoot "/var/www/vhosts/www.example.com"

但是,该指令本身并不允许客户端访问该目录。您必须指定该目录的配置,例如。

<Directory "/var/www/vhosts/www.example.com">
      Options Indexes FollowSymLinks
      AllowOverride All
      Order allow,deny
      Allow from all 
</Directory>

如果您的Document根目录(在此示例中)是/var/www/vhosts/www.example.com,则apache需要具有对/ var / www / vhosts /和/ var / www / vhosts /的写入/执行访问权限需要在apache中配置。


好。

我相信如果一切都是777,问题很可能与open_basedir或/和apache指令有关。

确保在apache和open_basedir中可以访问../Paypal.log。 还要记住该范围内的其他内容以及它将如何影响您的安全性。