Linux
如何在同一伺服器上執行兩個 Django 版本?
我有兩個網路應用程序。一種是使用 Django 1.0 開發的,另一種是使用 Django 1.4 開發的。如何使用兩個版本的 django 在同一個 apache2 伺服器上執行這兩個應用程序?有人告訴我一些關於 virtualenv 的事情……我正在使用 mod_wsgi。
謝謝
您絕對應該使用 virtualenv。
這是檢查是否已安裝 virtualenv 的方法:
$ virtualenv --version
如果你沒有安裝 virtualenv,你可以像這樣安裝它:
$ pip install virtualenv
如果這給你一個錯誤,你可能還沒有 pip。您可以使用以下方式安裝它:
$ easy_install pip
安裝 virtualenv 後,您可以創建單獨的虛擬 Python 環境,每個 Django 安裝一個,如下所示:
$ virtualenv env
我建議在每個應用程序的項目文件夾中執行此命令。如果這樣做,您將獲得一個名為“env”的文件夾,其中將包含虛擬 Python 環境。每次您想開始使用虛擬環境時,都可以發出以下命令:
$ source env/bin/activate
您的提示應該通過看起來像這樣表明您正在執行環境:
(env)$
您可以通過鍵入以下內容離開 virtualenv:
(env)$ deactivate
如果您已經走到這一步,您可以開始安裝特定環境版本的 Python 包,如下所示(在啟動的環境中):
(env)$ pip install Django==1.0
這將在目前虛擬環境中安裝 Django 1.0 版。您可以通過發出以下命令查看它是否有效:
(env)$ pip freeze
這應該會導致類似:
Django==1.0-final wsgiref==0.1.2
您現在可以停用此環境,啟動其他環境,然後像這樣安裝 Django 1.4:
(env)$ pip install Django==1.4
希望這可以幫助!