Apache-2.2

理想的開發環境

  • October 1, 2009

我們有一個基於 linux 的開發伺服器,我們從基於 Windows 的桌面連接到它(通過 ssh、scp、samba(映射網路驅動器)等)

我們在 perl 中進行 Web 開發,使用 apache2、mod_perl 和 MySQL,我們的程式碼庫在 SVN 原始碼控制下。

讓所有(目前 5 個)開發人員獨立開發的最佳方式是什麼?

在過去,我經歷過執行多個 apache 實例(可以通過破解 apache 的原始碼和編譯來實現)

但也許使用虛擬化並有效地為每個開發人員提供自己的開發伺服器會更好(儘管對於 Web 開發來說似乎有點矯枉過正)

如果我只執行一個 apache 實例,將傳入請求重定向到正確程式碼庫的最佳方法是什麼?港口?子域?客戶端的IP地址?

謝謝

虛擬機非常適合這類事情——每個開發人員都可以工作而不必擔心妨礙他人工作,並且他們可以在必要時更改系統配置以支持新程式碼。使用主 VM 映像或配置管理可以輕鬆維護類似生產的環境。

我實際上建議使用 Apache 的內置 VirtualHost 函式。通過使用基於名稱的虛擬主機,您可以執行一個具有完全不同的根程式碼庫的 apache 實例。他們必須為每個使用者擁有自己的域名,但這應該不是問題。你最終會得到類似的東西:

mark.dev.example.com
james.dev.example.com
julia.dev.example.com

由於您已經有一個 SVN 伺服器設置,您可以為每個使用者創建一個獨立的儲存庫,當他們完成對該塊的工作時,他們可以將其合併回主幹。您也可以使用這些進行 SSL,但如果您想使用相同的證書,則需要是萬用字元或包含所有其他地址。

您可以從 apache 網站獲取有關1.x版和2.x版的基於名稱的虛擬主機的更多資訊

您還可以在不執行其他數據庫的情況下為您的開發人員提供自己的 MySQL 數據庫(我假設您的軟體可以指定它連接到的數據庫的名稱,而不僅僅是主機)。

引用自:https://serverfault.com/questions/70300