2016-08-11 1062 views
1

我一直在看所有其他堆棧溢出問題,也有這個錯誤消息,但沒有提供的答案是幫助我。我將首先提供此問題的上下文,然後共享我設置的錯誤日誌和配置。PHP警告:未知:open_basedir限制生效。文件(0)不在允許的路徑(S)

因此,在我公司的網站上,我們有一個由CodeIgniter由一家完全獨立的開發公司創建的客戶端門戶。他們沒有回覆我的任何電子郵件,所以我不得不自己嘗試解決這個問題。我的PHP技能並不完全符合鼻菸,但我正在努力解決這個問題。

該錯誤基本上與文件上傳有關。客戶端門戶允許我們上傳文件供我們的客戶查看,並且它可以將許多文件壓縮到一起發送給多個人。本週以來,上傳一直在失敗。這只是第一個問題,目前的問題是由於「open_basedir限制生效」錯誤,我無法查看任何錯誤日誌。

因此,這裏有我的一些配置在/etc/php5/apache2/php.ini文件:

open_basedir = /var/www/:/tmp/ 
error_reporting = E_ALL & ~E_DEPRECATED & ~E_STRICT 
display_errors = On 
display_startup_errors = On 
log_errors = On 
error_log = "/var/www/dashboard.fnfa.ca/php_errors.log" 

即使error_log裏定義的,它不會記錄到的某些原因。因此,在/var/www/dashboard.fnfa.ca/.htaccess我加入了以下配置:

php_flag error_log /var/www/dashboard.fnfa.ca/php_errors.log 

這將讓該文件記錄到,但是這是我而是收到實際的PHP錯誤的這個錯誤:

PHP Warning: Unknown: open_basedir restriction in effect. File(0) is not within the allowed path(s): (/var/www/:/tmp/) in Unknown on line 0 

我假設open_basedir限制阻止正確的消息顯示。我一直在討論open_basedir配置,試圖獲取除此錯誤消息之外的任何內容。我將open_basedir值更改爲以下無效:

open_basedir = /var/www/:/tmp/:/var/www/dashboard.fnfa.ca/ 

這沒有做什麼。當我將它設置爲'無'時,錯誤日誌不再被寫入。我有一種感覺,這是一個非常簡單的問題,我遇到了很大的麻煩。如果有人能幫我解決這個問題,我會非常感激。如果您希望看到其他任何設置,請儘量提供,並儘可能提供我的能力。

+0

試試這個,讓我們知道它是否有幫助? https://www.reddit.com/r/PHP/comments/4x9n9h/problem_on_stack_overflow_please_help/ – Volomike

+0

運行'php_ini_loaded_file()'的結果是什麼? http://php.net/manual/en/function.php-ini-loaded-file.php – Scott

+0

@Scott它給了我php.ini的正確位置。 Volomike Reddit目前處於關閉狀態,但我已經在去吃午飯之前看過你發佈的內容。一旦我給你的文章進行了概述,我會盡快回復你。 感謝您幫助您們 – SBlancher

回答

0

原來我們的祕書取消了我們的亞馬遜網絡服務帳戶,網絡應用程序使用亞馬遜S3。仍然看不到錯誤日誌,但至少我的Web應用程序將在今天啓動並運行。

相關問題