1. 程式人生 > >Windows下實現Django + Apache 部署

Windows下實現Django + Apache 部署

工具:Django1.11.6,Apache2.4.33

Django專案地址:D:\picture

第一步:下載與安裝Apache

選擇對應電腦版本下載Apache2.4:下載地址

我的是64位win7,所以下載的是第一個。

下載完成之後解壓到資料夾,進入資料夾的 /Apache24 目錄下。


第二步:配置Apache

開啟 conf/httpd.conf 檔案,進行一些修改。

  1. ServerRoot "E:\httpd-2.4.33-Win64-VC15\Apache24"    # 這個是我的解壓後的資料夾
  2. ……  
  3. Listen 127.0.0.1:8080    #修改埠號  
  4. ……  
  5. ServerName www.example.com:8080      
  6. ……  
  7. DocumentRoot "E:\httpd-2.4.33-Win64-VC15\Apache24\htdocs"   #對應apche資料夾下的htdocs資料夾,以下同  
  8. <Directory "E:\httpd-2.4.33-Win64-VC15\Apache24\htdocs">  
  9. ……  
  10. ScriptAlias /cgi-bin/ ""E:\httpd-2.4.33-Win64-VC15\Apache24\cgi-bin"  
  11. ……  
  12. <Directory "E:\httpd-2.4.33-Win64-VC15\Apache24\cgi-bin">  
  13.     AllowOverride None  
  14.     Options None  
  15.     Require all granted  
  16. </Directory>  

建議使用Notepad++ 開啟,可使用Ctrl+f 進行查詢,因為上面需要修改的資料並不在同一個位置。

路徑和埠修改好之後

進入 bin 目錄下啟動httpd.exe 檔案,會看到一個一閃而逝的視窗

然後通過瀏覽器訪問 127.0.0.1:8080

網頁出現 It works 則表示配置成功,否則為失敗,需仔細檢查上述修改是否正確。

第三步:下載安裝mod_wsgi獲取wsgi相關資訊

Ctrl + f 輸入mod_wsgi 進行下載

要根據自己Python版本與電腦資訊下載對應的版本。

我的是 Python3.6,電腦64位所以下載的是箭頭所指的版本。


下載完成之後進入命令列進行安裝,然後輸入 mod_wsgi-express module-config

將顯示出來的三條資訊記住,後面配置檔案中要用到。

如果不知道怎麼安裝,參考 點選開啟連結



第四步:部署Django與Apache

開啟之前的 httpd.conf 檔案,在檔案末尾加入以下資訊

#新增mod_wsgi.so模組,這三行是上面命令列中顯示出來的
LoadFile "d:/python36/python36.dll"
LoadModule wsgi_module "d:/python36/lib/site-packages/mod_wsgi/server/mod_wsgi.cp36-win_amd64.pyd"
WSGIPythonHome "d:/python36"


#指定專案的wsgi.py配置檔案路徑,這個py檔案是在你的Django專案中  
WSGIScriptAlias / d:/picture/picture/wsgi.py  
  
#指定專案目錄,即你的Django專案路徑 
WSGIPythonPath  d:/picture
  
<Directory d:/picture/picture>  
<Files wsgi.py>  
    Require all granted  
</Files>  
</Directory>  
  
#專案靜態檔案地址, Django專案中靜態檔案的路徑  
Alias /static D:/picture/tu/static
<Directory D:/picture/tu/static>  
    AllowOverride None  
    Options None  
    Require all granted  
</Directory>  
  
#專案media地址, 上傳圖片等資料夾的路徑  
Alias /media D:/picture/tu/media
<Directory D:/picture/tu/media>  
    AllowOverride None  
    Options None  
    Require all granted  
</Directory>  

然後進入Django專案內的settings.py檔案下進行配置

DEBUG = False     
    
TEMPLATE_DEBUG = False    
    
ALLOWED_HOSTS = ['*']        

重啟httpd.exe程式,瀏覽器訪問 127.0.0.1:8080 就可以看到你的Django專案了。

如果出錯,可以進入 logs/error.conf 檔案中進行檢視錯誤資訊並相應解決。

成功部署後如果想要你的Django專案能通過區域網訪問,則需要進一步的配置。

進入 httpd.conf 檔案中,修改前面設定的Listen和ServerName為

Listen 你的IP地址:80  
......  
ServerName 你的IP地址:80  

如果不知道自己的ip地址

儲存檔案,然後重啟httpd.exe程式就OK了。