Apache部署Django項(xiàng)目圖文詳解
前言
Django項(xiàng)目本身就可以啟動(dòng)運(yùn)行,為什么還需要部署到Apache或者Nginx上呢?初學(xué)者都會(huì)遇到這個(gè)問(wèn)題,我們來(lái)看看官方解釋?zhuān)篒t's intended only for use while developing. (We're in the business of making Web frameworks, not Web servers.),意思是django的業(yè)務(wù)是制作Web框架,而不是Web服務(wù)器。自帶的web server只是方便開(kāi)發(fā),并不能直接放到生產(chǎn)環(huán)境,有興趣的同學(xué)可以自己測(cè)試兩者性能上的差距。 言歸正傳,我們這里主要講述如何搭建Apache環(huán)境。
安裝Apache
Apache(win 64)下載:https://www.apachehaus.com/cgi-bin/download.plx#APACHE24VC09
1.解壓縮,修改Apache24\conf\httpd.conf 文件中的apache路徑和端口:
...... Define SRVROOT "E:/Apache24" ServerRoot "${SRVROOT}" ...... #Listen 12.34.56.78:80 Listen 8088 ...... ServerName localhost:8088 ......
2.打開(kāi)E:\Apache24\bin\httpd.exe,在瀏覽器輸入http://127.0.0.1:8088/ 出現(xiàn)welcome頁(yè)面代表成功。
mod_wsgi 模塊下載:http://www.lfd.uci.edu/~gohlke/pythonlibs/#mod_wsgi
1.把whl文件改成zip,解壓縮,把里面的mod_wsgi.so拷貝到E:\Apache24\modules路徑下,httpd.conf 中新增一段配置:
#添加mod_wsgi.so 模塊 LoadModule wsgi_module modules/mod_wsgi.so
若mod_wsgi解壓后找不到mod_wsgi.so文件(如有跳過(guò)此步驟)
運(yùn)行cmd,進(jìn)入Scripts目錄執(zhí)行安裝操作:
pip3 install mod_wsgi-4.5.17+ap24vc10-cp34-cp34m-win_amd64.whl
在Scripts目錄執(zhí)行:mod_wsgi-express module-config
把三行內(nèi)容復(fù)制到httpd.conf:
#添加mod_wsgi.so 模塊 LoadFile "c:/python34/DLLs/python3.dll" LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd" WSGIPythonHome "c:/python34"
配置Apache與Django
1.打開(kāi)Apache配置文件 httpd.conf,在末尾增加一段配置:
#添加mod_wsgi.so 模塊 LoadFile "c:/python34/DLLs/python3.dll" LoadModule wsgi_module "c:/python34/lib/site-packages/mod_wsgi/server/mod_wsgi.pyd" WSGIPythonHome "c:/python34" #指定myweb項(xiàng)目的wsgi.py配置文件路徑 WSGIScriptAlias / D:/mysite/mysite/wsgi.py #指定項(xiàng)目路徑 WSGIPythonPath D:/mysite <Directory D:/mysite/mysite> <Files wsgi.py> Require all granted </Files> </Directory> Alias /static D:/mysite/static <Directory D:/mysite/static> AllowOverride None Options None Require all granted </Directory>
2.打開(kāi)django項(xiàng)目setting配置:
DEBUG = False ALLOWED_HOSTS = ['127.0.0.1','localhost'] #允許訪問(wèn)的ip。也可以用'*'表示,代表不受限制
重啟bin\httpd.exe,輸入U(xiǎn)RL
測(cè)試OK
3.將Apache安裝成windows server,就不需要每次打開(kāi)httpd.exe出現(xiàn)一個(gè)小黑框了。
bin目錄下運(yùn)行cmd命令httpd -k install -n “服務(wù)名” (不加參數(shù),默認(rèn)Apache2.4)
運(yùn)行apache:net start apache2.4
停止apache:net stop apache2.4
刪除apache:sc delete Apache2.4
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
超實(shí)用Python庫(kù)之lxml使用方法詳解
lxml是python的一個(gè)解析庫(kù),支持HTML和XML的解析,支持XPath解析方式,下面這篇文章主要給大家介紹了關(guān)于超實(shí)用Python庫(kù)之lxml使用方法的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-07-07關(guān)于對(duì)python中self的深入理解
self代表類(lèi)的實(shí)例,而非類(lèi),下面這篇文章主要給大家介紹了關(guān)于對(duì)python中self的深入理解,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-09-09DRF?QuerySet?Instance數(shù)據(jù)庫(kù)操作功能概述
這篇文章主要為大家介紹了DRF?QuerySet?Instance數(shù)據(jù)庫(kù)處理的功能概述,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-10-10Python類(lèi)中__init__()?和self的詳細(xì)解析
self和__init__的語(yǔ)法學(xué)過(guò)Python的都清楚,但是靠死記硬背來(lái)迫使自己理解并不是個(gè)好辦法,下面這篇文章主要給大家介紹了關(guān)于Python類(lèi)中__init__()?和self的相關(guān)資料,需要的朋友可以參考下2022-12-12用Python實(shí)現(xiàn)最速下降法求極值的方法
今天小編就為大家分享一篇用Python實(shí)現(xiàn)最速下降法求極值的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-07-07django中F表達(dá)式和Q函數(shù)應(yīng)用與原理詳解
F對(duì)象查詢(xún)與Q對(duì)象查詢(xún),剛看到大家一定會(huì)感到很陌生,其實(shí)它們也是 Django 提供的查詢(xún)方法,而且非常的簡(jiǎn)單的高效,下面這篇文章主要給大家介紹了關(guān)于django中F表達(dá)式和Q函數(shù)應(yīng)用與原理的相關(guān)資料,需要的朋友可以參考下2023-05-05Python 更快進(jìn)行探索性數(shù)據(jù)分析的四個(gè)方法
今天我給大家分享幾種更快的探索性數(shù)據(jù)分析方法,它們可以進(jìn)一步加速 EDA。 我們以一個(gè)學(xué)生考試成績(jī)的例子,創(chuàng)建一個(gè)如下所示的 DataFrame 并繼續(xù)操作。歡迎收藏學(xué)習(xí),喜歡點(diǎn)贊支持2021-11-11