應實際需求,特記於此,以備忘
環境:
- Windows Server 2012
- Apache 2.4
- python 3.6
- Django 1.11
- mysql 5.7
1. 安裝所需環境
2. 配置Apache
進入C:\Apache24\conf
這是Apache服務氣的配置文件夾,修改httpd.conf
文件,使用VSCode打開,Ctrl+f 搜索Define SRVROOT
,並修改項目配置
Define SRVROOT "C:\Apache24" #Apache24文件的路徑,其餘不用改。
ServerRoot "${SRVROOT}"
Listen IP:PORT #需要部署到服務器的ip和端口號
ServerName IP:PORT #需要部署到服務器的ip和端口號
3. 創建Apache服務
進入C:\Apache24\bin
目錄,使用管理員身份運行cmd命令行,輸入以下代碼:
httpd.exe -k install -n "apache2.4" # -n參數給服務起別名,apache2.4是所創建服務器名稱,也可不寫,使用默認的。
出現successfully installed,安裝成功
打開瀏覽器輸入對應的ip,看到Apache歡迎頁面,啓動完成
4. 安裝mod_wsgi
mod_wsgi的目標是實現一個簡單的Apache模塊,支持任何Python WSGI的接口的Python應用程序的託管。該模塊適用於高性能生產的WEB站點,同時也適用於自己維護站點的WEB 服務託管(虛擬主機環境–譯者注)。
下載地址 版本說明:
ap24vc14 表示Apache2.4VC14
版本,cp36表示python3.6,amd64表示64位
[外鏈圖片轉存失敗(img-SYN6npjZ-1566094976202)(/images/article_image/2019.09/mod_wsgi.png)]
注意:下載對應版本要匹配
下載之後:
pip3 install "mod_wsgi-4.5.24+ap24vc14-cp36-cp36m-win_amd64.whl"
安裝成功之後:
mod_wsgi-express module-config
可以得到相關環境的安裝地址:
LoadFile "c:/users/my/appdata/local/programs/python/python36/python36.dll"
LoadModule wsgi_module "c:/users/my/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/my/appdata/local/programs/python/python36"
5. 配置Django項目
打開httpd.conf,在該文件末尾加入以下內容(也可以使用Include進行引入,任選其一即可):
LoadFile "c:/users/my/appdata/local/programs/python/python36/python36.dll"
LoadModule wsgi_module "c:/users/my/appdata/local/programs/python/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "c:/users/my/appdata/local/programs/python/python36"
#設置工程中的wsgi路徑
WSGIScriptAlias / C:\Apache24\sites\yikuang\yikuang\wsgi.py
#設置工程路徑
WSGIPythonPath C:\Apache24\sites\yikuang\yikuang
#設置wsgi路徑
<Directory C:\Apache24\sites\yikuang\yikuang\wsgi.py>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
#設置靜態文件路徑
Alias /static C:\Apache24\sites\yikuang\yikuang\static
<Directory C:\Apache24\sites\yikuang\yikuang\static>
AllowOverride None
Options None
Require all granted
</Directory>
使用Include引入的方式:
Include sites/yikuang/yikuang.conf # 此方式將上面的代碼不再追加到httpd.conf中,另外創建配置文件,並寫入
6. 重啓服務
httpd.exe -k restart
7. 測試是否成功
打開瀏覽器,輸入正確的IP及端口號, 部署成功!
參考:https://blog.csdn.net/weiyuanke/article/details/7696670