我正在为客户处理一个网站,我已经在我的服务器上克隆了整个网站,并且它似乎可以工作。
现在我已将该网站复制到他的服务器并尝试付款(使用 paypal pro),但出现权限错误:
`Warning: error_log(../PayPal.log) [function.error-log]: failed to open stream: Permission denied`
我尝试将所有内容的权限更改为 777,但此错误不断出现。
我环顾四周,在谷歌和这里我看到它可能与 php 设置有关(safemode
or open_basedir
)但是当我检查时phpinfo()
它似乎 safemod 已禁用并且 open_basedir 为空。
有人有主意吗?
Update
添加任何虚拟主机(甚至单个主机)时,您必须在 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 apache 需要对 /var/www/vhosts/ 具有写入/执行访问权限,而 /var/www/vhosts/ 则需要在apache中配置。
Okay.
我相信,如果一切都是 777,则问题很可能与 apache 的 open_basedir 或/和指令有关。
确保 ../Paypal.log 可在 apache 和 open_basedir 中访问。
还要记住该 ../ 范围内还有哪些内容以及它将如何影响您的安全。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)