2013-02-07 105 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' –

相關問題