Windows下Python3.6.2+Django-1.11.5+httpd-2.4.27-win64-VC14部署網站

來源:互聯網
上載者:User

標籤:部署   pat   ges   2.3   dir   ase   項目   複試   網上   

最近項目組正在上python+django。現在將部署過程總結下,相關檔案也備份下,面得每次都要弄半天。網上很多不靠譜的做法,讓我反覆試錯,浪費不少時間。

原材料:

Python3.6.2

httpd-2.4.27-win64-VC14

mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl

Django-1.11.5

說明:

由於Python2.7未來會停止更新,公司就採用最新版算了

Apache不能編譯成功,乾脆就下了,現在採用的2.4 VC14版本,為啥要用VC14,因為mod_wsgi最新版只支援到VC14

mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl:我們來解釋下:

ap24vc14:apache 2.4 VC14版本

cp36-cp36m:這一節就是指python3.6+

win_amd64:就是只64位系統

在這裡切記:一定要找到和你的系統版本,python版本,apache版本一致的幾個套件,否則死活不成功。

接下裡:我們就講下如何安裝:

1.配置Apache

Apache24:解壓下來如下。

這裡,我們需要修改:config檔案。

在37行附近:修改apache的路徑:

ServerRoot "D:/install/httpd-2.4.27-win64-VC14/Apache24"

 

在這個檔案裡面。預設是C:/Apache24。一鍵替換為你的實際路徑。可以參考

 

在57行附近,修改監聽的連接埠:

#Listen 12.34.56.78:80

Listen 8088

然後運行httpd.exe.這裡,需要用命令列中運行。只要命令列視窗不退,表明運行成功。使用http://localhost:8088進行訪問

2.安裝python及pip

安裝python3.6.2的時候,會把pip一起安裝出來。然後配置環境變數。網上多的很的教程,隨便 參考 這個文檔

3.安裝Django

參考這個文檔: django 官方文檔 在這裡下載也可以

 

4.用mod_wsgi打通apache和django

注意:在低版本使用mod_wsgi.so即可讓django和apache聯絡起來。但是,這個版本的wsgi沒有.so檔案。那麼我們如何載入wsgi呢?

 

將你的 mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl 檔案,拷貝到python scripts的目錄下,用

pip3 install mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl

進行安裝。之後會出現如下內容:

PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts> pip3 install C:\Users\Administrator\AppData\Lo

cal\Programs\Python\Python36\Scripts\mod_wsgi-4.5.17+ap24vc14-cp36-cp36m-win_amd64.whl

Requirement already satisfied: mod-wsgi==4.5.17+ap24vc14 from file:///C:/Users/Administrator/AppData/Local/Programs/Python/Python36/Scripts/mod_wsgi-4.5.17%2Bap24vc14-cp36-cp36m-win_amd64.whl in c:\users\administrator\appdata\local\programs\python\python36\lib\site-packages

PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts> mod_wsgi-express module-config

LoadFile "c:/users/administrator/appdata/local/programs/python/python36/python36.dll"

LoadModule wsgi_module "c:/users/administrator/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"

WSGIPythonHome "c:/users/administrator/appdata/local/programs/python/python36"

PS C:\Users\Administrator\AppData\Local\Programs\Python\Python36\Scripts>

從命令列視窗把黑色字型部分拷貝出來,放到apache httpd.config

的 最後一個 LoadModule 的位置。大概在180行左右。

緊接著,在後寫入:

#wsgi檔案的位置

WSGIScriptAlias / E:/Workspace/pyworkspace/mycms/mycms/wsgi.py

#項目位置

WSGIPythonPath E:/Workspace/pyworkspace/mycms

#設定指令碼

<Directory E:/Workspace/pyworkspace/mycms/mycms>

<Files wsgi.py>

Require all granted

setHandler wsgi-script

</Files>

</Directory>

 

5.修改wsgi檔案:

把以下代碼放到wsgi檔案的紅色框內

import sys
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(BASE_DIR)

 

至此,我們就結束了django 的部署。在我們的views中,有這樣的返回:

此時啟動apache,輸入你實際的地址:

Windows下Python3.6.2+Django-1.11.5+httpd-2.4.27-win64-VC14部署網站

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.