原創 2017年07月05日 19:55:00 python
最近在部署一個django項目到Apache服務器上遇到了很多問題現整理個完整流程django
1.準備工做瀏覽器
python版本:python3.6.1 64位服務器
django版本:django 1.11.2ide
Apache版本:2.4.26 64位網站
2.安裝Apacheui
apache官方網站http://httpd.apache.org/
根據本身的環境選擇相應的版本進行下載
把下載後的安裝包解壓到安裝路徑修改conf/httpd.conf文件:
[plain] view plain copy
Define SRVROOT "/Apache24" #把此處改成安裝路徑如Define SRVROOT "D:\Program Files\Apache24"
ServerRoot "${SRVROOT}"
啓動bin/httpd.exe程序如沒有任何輸出則配置成功
經過瀏覽器訪問locahost
3.安裝mod_wsgi
1.下載mod_wsgi Python的插件 http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
如 mod_wsgi4.5.15+ap24vc14cp36cp36mwin_amd64.whl
i. 這個插件對應的Apache版本是24 VC是14
ii. Python版本是3.6
iii. 64位系統
在下載時要選擇相應的版本,不然Apache啓動時會有問題
2. 下載後後綴名改成.zip進行解壓,可是解壓後找不到mod_wsgi.so文件
3.把下載的.whl文件複製到python\Scripts下使用
[plain] view plain copy
pip3 install "mod_wsgi-4.5.15+ap24vc14-cp36-cp36m-win_amd64.whl"
進行安裝在安裝成功後在python的安裝目錄的\scripts文件夾下運行
[plain] view plain copy
mod_wsgi-express module-config
輸出以下三行結果
把這三行內容複製到http.cnf文件下進行配置
[plain] view plain copy
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項目
[plain] view plain copy
#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程序便可