
我想在我的家庭網路上設定一個測試伺服器,這樣我就可以在本地開發我的網站,並在解決問題後更新我的網站。今年夏天我開始學習 php(我是我就讀的大學的學生工作者),在工作中我們在 subversion 儲存庫中設定了網站。然後,我們在與實際站點不同的開發站點上開展工作。當需要更新即時網站時,我的老闆將儲存庫資料「複製」(我假設我不確定)到即時網站。似乎我的老闆不必更改程式碼中的任何連結等。我認為它“正常工作”的原因是因為在該網站上工作的每個人都使用不同的 URL 訪問開發網站。我的問題是:我如何為自己實現相同(或類似)的伺服器設定?如果您想知道我正在使用 Ubuntu 9.04 桌面版,以及(我假設安裝正確)LAMP 伺服器。
答案1
我假設「在幕後」有一個腳本可以從儲存庫中檢索最新更新,然後替換一些資料。例如,開發網站是 dev.net,生產網站是 prod.net,腳本將所有出現的 dev.net 替換為 prod.net,腳本還需要檢查與資料庫的連線是否指向正確的資料庫伺服器。
答案2
使用 apache 託管網站。如果 apache、mysql、php 缺少某些東西,您可以使用 apt-get 或 synaptic 安裝它。該網站僅透過複製即可工作,可能是因為使用相對連結而不是絕對連結。
例如,如果你想連結到資料夾a內的資料夾b,那麼有兩種方法
<a href="b/other.php"> Link </a>
和
<a href="http://localhost/a/b/other.php"> Link </a>
第一個是相對鏈接,第二個是絕對鏈接。如果您僅使用相對連結準備網站,則網站將透過複製貼上工作而不會出現任何問題。
答案3
他不必更改連結的原因可能是因為應用程式中的所有內容都使用相對 URL。因此,頁面的連結將是“/services.html”而不是“http://www.mydomain.com/services.html」。
即時網站實際上也可能位於儲存庫中,在這種情況下,您的老闆可能有一個腳本,可以將最新版本從開發儲存庫下載到產品儲存庫,然後提交生產儲存庫。