Django nginx配置實(shí)現(xiàn)過程詳解
django
在引入第三方模塊的時(shí)候保證服務(wù)的高可用,要設(shè)立一個(gè)備份接口,當(dāng)主接口宕機(jī)時(shí)可以設(shè)置一個(gè)超市參數(shù)來使用備份的接口。
nginx
反向代理器,網(wǎng)站服務(wù)器,負(fù)載均衡
基本命令
- sudo nginx啟動(dòng)
- sudo nginx -s stop
- sudo nginx -s quit
- sudo nginx -s reopen
關(guān)鍵配置模塊
- events配置域:網(wǎng)絡(luò)連接相關(guān)配置(I/O模塊)
- server配置域:相關(guān)服務(wù)節(jié)點(diǎn)配置
- location
- http配置域
- upstream配置域:反向代理配置域
層次關(guān)系
events { .... } http { ... upstream { ... } server { ... location { ... } } }
WSGI協(xié)議:web server 和 web application通信的規(guī)范
uwsgi : webserver 接受客戶端的請求,傳送給 web application
web application :django flask tornado
django uwsgi部署
- uWSGI可以進(jìn)行多線程調(diào)度,進(jìn)程監(jiān)控
- 提供完善的請求日志處理
- runserver 性能差
為什么有了uwsgi還要使用nginx
- nginx提供了更加安全的服務(wù)保障
- 提供反向代理,負(fù)載均衡等功能
- 對(duì)于靜態(tài)文件處理能力強(qiáng)
nginx配置步驟
uwsgi啟動(dòng)django應(yīng)用服務(wù)
修改nginx配置文件完成反向代理配置
/etc/nginx/sites-available/nginx.conf備份
upstream uwsgi { server 127.0.0.1:8000; } server { listen:80; server_name: .xxxxx.com 無論一級(jí)域名還是二級(jí)域名 charset:utf-8; access_log # 可以配置日志文件 location / { proxy_pass http://uwsgi; # 所有訪問域名的連接轉(zhuǎn)發(fā)到配置好的upstream } }
刪除源/nginx.conf 給新配置的conf設(shè)置軟連接
收集靜態(tài)文件,完成靜態(tài)文件尋址配置
設(shè)置好static_url
python manage.py collect
拷貝生成的目錄
server { listen:80; server_name: .xxxxx.com 無論一級(jí)域名還是二級(jí)域名 charset:utf-8; access_log # 可以配置日志文件 location / { proxy_pass http://uwsgi; # 所有訪問域名的連接轉(zhuǎn)發(fā)到配置好的upstream } location /static { alias 拷貝好的目錄 } }
nginx -s reload
https部署,可以在騰訊云申請個(gè)人域名免費(fèi)https,配置好server中的certificate
負(fù)載均衡 反向代理upstream,配置權(quán)重,直接在每一個(gè)配置好的upstream中配置權(quán)重weight。關(guān)閉uwsgi端口的訪問。
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- Nginx+Uwsgi+Django 項(xiàng)目部署到服務(wù)器的思路詳解
- Centos8下django項(xiàng)目部署 nginx+uwsgi的教程
- Docker部署Django+Mysql+Redis+Gunicorn+Nginx的實(shí)現(xiàn)
- 淺談Django+Gunicorn+Nginx部署之路
- 初次部署django+gunicorn+nginx的方法步驟
- Ubuntu系統(tǒng)搭建django+nginx+uwsgi的教程詳解
- 詳解Django+uwsgi+Nginx上線最佳實(shí)戰(zhàn)
- Django uwsgi Nginx 的生產(chǎn)環(huán)境部署詳解
- Centos部署django服務(wù)nginx+uwsgi的方法
相關(guān)文章
OpenCV中resize函數(shù)插值算法的實(shí)現(xiàn)過程(五種)
最新版OpenCV2.4.7中,cv::resize函數(shù)有五種插值算法:最近鄰、雙線性、雙三次、基于像素區(qū)域關(guān)系、蘭索斯插值。感興趣的可以了解一下2021-06-06pip安裝庫報(bào)錯(cuò)[notice]?A?new?release?of?pip?available:?22.2
這篇文章主要給大家介紹了關(guān)于pip安裝庫報(bào)錯(cuò)[notice]?A?new?release?of?pip?available:?22.2?->?22.2.2的相關(guān)資料,文中通過圖文將解決的方法介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03Python語音合成的項(xiàng)目實(shí)戰(zhàn)(PyQt5+pyttsx3)
本文主要介紹了Python語音合成的項(xiàng)目實(shí)戰(zhàn)(PyQt5+pyttsx3),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02如何利用Python快速統(tǒng)計(jì)文本的行數(shù)
這篇文章主要介紹了如何利用Python快速統(tǒng)計(jì)文本的行數(shù),要快速統(tǒng)計(jì)一個(gè)文本文件中的行數(shù),其實(shí)就是要統(tǒng)計(jì)這個(gè)文本文件中換行符的個(gè)數(shù),下面我們就一起進(jìn)入文章看看具體的操作過程吧2021-12-12Python定時(shí)執(zhí)行之Timer用法示例
這篇文章主要介紹了Python定時(shí)執(zhí)行之Timer用法,實(shí)例分析了Timer模塊的原理及相關(guān)使用技巧,需要的朋友可以參考下2015-05-05Python進(jìn)階之遞歸函數(shù)的用法及其示例
本篇文章主要介紹了Python進(jìn)階之遞歸函數(shù)的用法及其示例,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-01-01python在線編譯器的簡單原理及簡單實(shí)現(xiàn)代碼
這篇文章主要介紹了python在線編譯器的簡單原理及簡單實(shí)現(xiàn)代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-02-02Python實(shí)現(xiàn)多張圖片合成一張馬賽克圖片
這篇文章主要介紹了了Python如何實(shí)現(xiàn)將多張圖片合成一張馬賽克圖片。文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定的幫助,感興趣的可以學(xué)習(xí)一下2021-12-12