2011-10-26 48 views
8

我使用MediaWiki,但出現錯誤。我在文件中找到它。沒有與此代碼行:realpath返回空字符串

$IP = realpath('.'); 

但是$ IP返回一個空字符串,所以在系統的路徑,文件無法正常工作。 (例如,如果$ IP將是.E:/path_to_wwwroot它工作)。我該如何解決這個問題。我的提供者是否有可能阻止訪問realpath?

謝謝!

+0

你用'。/'得到了什麼喜悅嗎?不應該有所作爲,但可能值得一試...... – DaveRandom

+0

否:-($ IP仍然是空的,但例如basename有效,但我不使用它,我想知道爲什麼會出現此錯誤。實際路徑可能會有更多的錯誤:-( – Jordy

+1

和'realpath()'不適用於不存在的文件 – Thamaraiselvam

回答

14

來源:http://php.net/manual/en/function.realpath.php

注:運行腳本必須具有層次結構中的所有目錄可執行權限,否則realpath()將返回FALSE。

所以你的web服務器也應該訪問pre-webroot目錄。

+2

啊謝謝,它需要在wwwroot中的所有目錄讀取權限?或者wwwroot之外的文件? – Jordy

+0

哇,它解決了問題!非常感謝。我需要更改從我的子域映射的讀取權限。謝謝!!! – Jordy

+0

當我運行「便攜式」PHP + NGINX應用程序WT-NMP時遇到了這個問題,我的沙盒的PHP應用程序引用了在我爲php.ini中的open_basedir指定的路徑之外的庫。我通過將我的庫路徑添加到open_basedir(在Windows上使用「;」分隔符)來解決此問題 – ftexperts

0

我目前在從命令行運行PHP時遇到這個結果,但不在HTTP請求中。必須在某處配置或$ _SERVER設置,如果找到修復程序,將會更新。