我有一個文件夾project2
與一些PHP文件,擴展與一些通用文件,我作爲符號鏈接添加到另一個文件夾project
。例如:符號鏈接的PHP腳本的工作目錄
project/index.php
project/config.php
project/templates/...
...
project2/project2_functions.php
project2/config.php
project2/index.php -> ../project/index.php
project2/templates/...
...
不過,如果我瀏覽project2/index.php
,似乎使用project/config.php
和project/templates/
等它看起來像PHP有些甚至解決之前,工作目錄設置符號鏈接,它用於提供內容提供內容並找到要包含的文件。然後將其設置到錯誤的位置。有什麼辦法可以規避這種行爲嗎?
符號鏈接只是一個鏈接而不是實際的文件。正在運行的腳本位於/ project中,而不在/ project2中,因爲它實際上運行的不是鏈接文件。想象一個象路標那樣的符號鏈接,而不是像這樣去這裏。 – Anigel
我認爲這並不容易。通常,符號鏈接對於不關心符號鏈接的應用程序是不可見的。它應該爲用戶表達(我的個人意見)。因此,如果PHP只是'打開'給定的路徑,它將得到PHP腳本,並且如果Apache或PHP將使用給定路徑的'dirname'更改爲目錄,則它將在project2中結束。但出於某種原因,PHP實際上完成了你自己說的話,例如。它會以某種方式「關心」符號鏈接,並在進一步處理之前解決它們,例如更改工作目錄,從而導致錯誤的位置。 – dronus