2012-04-23 84 views
0

我在虛擬環境中有一個django站點,它使用與Ubuntu安裝的Python 2.6。但我的Django應用程序需要Python 2.7。django + wsgi + python版本

我發現,我有作爲http://code.google.com/p/modwsgi/wiki/InstallationIssues#Multiple_Python_Versions

描述重新編譯我的wsgi使用--with-python選擇另一個Python版本,但我不知道這將是全球WSGI安裝?我是否可以將wsgi + Python2.7僅用於特定的虛擬環境?我不想影響服務器上的其他應用程序。

+2

你爲什麼投下來?也許有任何意見? :-) – 2012-04-23 13:25:12

回答

0

是的,這會影響全局安裝,即apache + modwsgi。我不使用apache + modwsgi,但是如果modwsgi可以動態地改變python解釋器(我懷疑它是這樣),這對你來說可能是更好的解決方案。

另一種方式可能是:檢查modwsgi是否可以配置爲了解virtualenv,因此它將使用此env的python解釋器,這也是不可能的,因爲它似乎是python lib鏈接的到modwsgi庫中。

您是否考慮過使用其他解決方案來運行您的django應用程序?

兩個OY運行你的應用程序作爲分離過程,然後你才能真正使用的virtualenv並選擇至極Python版本將使用。

+1

所有使用mod_wsgi安裝的虛擬環境目前都必須與mod_wsgi編譯的Python版本相同。這確實是因爲mod_wsgi是一個嵌入式系統並鏈接了特定版本的Python庫。換句話說,它實際上並沒有調用'python'可執行文件,因此硬連線。 – 2012-04-23 21:29:19

+0

確實,我認爲是這樣。謝謝@GrahamDumpleton! – 2012-04-24 14:43:42

+0

我現在需要快速解決方案。因爲我不熟悉mongrel2和gunicorn,我最好用Python 2.7重新編譯我的wsgi。也許以後我會嘗試其他解決方案。 無論如何,謝謝你們,你節省了我很多時間。 – 2012-04-24 19:29:58