Windows上Python3.6環境django部署到Apache伺服器
阿新 • • 發佈:2019-01-09
最近在部署一個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下使用
進行安裝在安裝成功後在python的安裝目錄的\scripts資料夾下執行pip3 install "mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win_amd64.whl"
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程式即可