2013-02-07 104 views
2

我正在应对客户端的网站,我克隆了整个网站在我的服务器上,它似乎工作。 现在我已经在他的服务器,并试图进行付款复制的网站(使用贝宝的亲),我收到一个权限错误:文件...未能打开流:权限被拒绝

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

我试图改变权限为777的一切,这错误不断。

我环顾四周,在谷歌和这里我看到,它可能有一些做与PHP设置(safemodeopen_basedir),但是当我检查phpinfo()它似乎safemod是残疾人和open_basedir的是空的。

有想法的人吗?

+1

如何对您制作整个副本的目录进行权限设置? –

+0

一切都设置为777.文件目录涉及任何事情的一切。 –

+0

如果使用绝对路径而不是相对路径,它会有所作为吗? – Mike

回答

2

更新

虽然添加任何虚拟主机(甚至是单台主机),你必须在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> 

,如果你的文档根目录(这个例子中)是/var/www/vhosts/www.example.com阿帕奇将需要有写/执行访问到/ var /网络/虚拟主机/和/ var/www/vhosts /需要在apache内配置。


好的。

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

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

+0

open_basedir。是空的,据我所知不限制任何文件夹。我不明白你指的是什么意思? –

+0

根据您的评论更新了答案 –

+0

我明白了。好的非常感谢,我会继续阅读,并寻找关于这个问题以及'documentRoot' –

相关问题