1. 程式人生 > >Windows上Python3.6環境django部署到Apache伺服器

Windows上Python3.6環境django部署到Apache伺服器

最近在部署一個django專案到Apache伺服器上遇到了不少問題現整理個完整流程

1.準備工作

python版本:python3.6.1 64位

django版本:django 1.11.2

Apache版本:2.4.26 64位

2.安裝Apache

根據自己的環境選擇相應的版本進行下載

把下載後的安裝包解壓到安裝路徑修改conf/httpd.conf檔案:

Define SRVROOT "/Apache24"  #把此處改為安裝路徑如Define SRVROOT "D:\Program Files\Apache24"
ServerRoot "${SRVROOT}"

啟動bin/httpd.exe程式如沒有任何輸出則配置成功

通過瀏覽器訪問locahost

3.安裝mod_wsgi


如 mod_wsgi‑4.5.15+ap24vc14‑cp36‑cp36m‑win_amd64.whl

 i. 這個外掛對應的Apache版本是24 VC是14

 ii. Python版本是3.6

 iii. 64位系統

在下載時要選擇相應的版本,否則Apache啟動時會有問題

2. 下載後後綴名改為.zip進行解壓,但是解壓後找不到mod_wsgi.so檔案

3.把下載的.whl檔案複製到python\Scripts下使用

pip3 install "mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win_amd64.whl"
進行安裝在安裝成功後在python的安裝目錄的\scripts資料夾下執行
mod_wsgi-express module-config
輸出如下三行結果

把這三行內容複製到http.cnf檔案下進行配置

LoadFile "d:/program files/python36/python36.dll"
LoadModule wsgi_module "d:/program files/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:/program files/python36"

再次啟動伺服器即可

4.配置Apache和django專案

#mod_wsgi設定
LoadFile "d:/program files/python36/python36.dll"
LoadModule wsgi_module "d:/program files/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:/program files/python36"
#指定website的wsgi.py配置檔案路徑
WSGIScriptAlias / E:/Python/website/web/wsgi.py
#指定專案路徑
WSGIPythonPath  E:/Python/website
<Directory E:/Python/website>
<Files wsgi.py>
    Require all granted
</Files>
</Directory>
再次啟動Apache24/bin/httpd.exe程式即可