2015-11-14 39 views
1

我已經對這個錯誤的時間太長,所以我尋找一些幫助從有經驗的程序員的服務器。PHP - 沒有這樣的文件或目錄(LAMP服務器)

我正在一個Bitnami LAMP堆棧。我正在嘗試使用PHP腳本(maintenance.php)在服務器上移動文件。所以我在腳本中使用rename(filepath, newpath)。但是,PHP腳本即使存在於服務器上也找不到該文件。

解決:問題是,我打電話從兩個不同的地方腳本調試時(我的瀏覽器,我的Linux外殼)。每個這些地方的「工作目錄」都不同,所以文件路徑代表不同的位置,這取決於我從哪裏調用PHP腳本。

+0

離開關開始'/' – ElefantPhace

+0

已經嘗試過。 >> 重命名(圖片/ CA/Ontario/Waterloo/564409b235bd29.29353255.jpg,存檔/ CA/Ontario/Waterloo/564409b235bd29.29353255.jpg):沒有這樣的文件或目錄 – wildebeest

+0

然後用絕對路徑 – ElefantPhace

回答

1

沒有pictures目錄的根所以/pictures不會工作。 相反,您將不得不使用絕對路徑到pictures目錄。

有多種方法可以做到這一點。

您可以使用$_SERVER['DOCUMENT_ROOT'],這將給你root directory under which the current script is executing

reserved.variables.server

此外,您還可以使用__FILE__這將給你的路徑,當前文件。 隨着dirname(__FILE__)你可以得到目錄,然後你可以使用../水平降低到圖片目錄。

這也是一個類似的問題,你可以檢查,

PHP include absolute path

+0

我現在正在取得進展。我非常困惑,因爲我從瀏覽器運行php腳本以及shell和工作目錄各不相同。謝謝你的幫助。 – wildebeest

相關問題