亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python框架django項(xiàng)目部署相關(guān)知識(shí)詳解

 更新時(shí)間:2019年11月04日 10:14:26   作者:張京墨  
這篇文章主要介紹了python框架django項(xiàng)目部署相關(guān)知識(shí)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

這篇文章主要介紹了python框架django項(xiàng)目部署相關(guān)知識(shí)詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

一:項(xiàng)目部署的框架

  nginx和uWSGI在生產(chǎn)服務(wù)器上進(jìn)行的部署

二:什么是nginx?

  nginx是一個(gè)web服務(wù)器。

  什么是web服務(wù)器?

  web服務(wù)器則主要是讓客戶(hù)可以通過(guò)瀏覽器進(jìn)行訪問(wèn),處理HTML文件,css文件,js文件,圖片等資源。web服務(wù)器一般要處理靜態(tài)文件。對(duì)接服務(wù)器。

  什么是靜態(tài)文件?

  css,js,html,圖片等不需要后臺(tái)進(jìn)行邏輯處理的文件。

  特點(diǎn):一般將靜態(tài)文件放在web服務(wù)器里面。如nginx服務(wù)器中,做到動(dòng)態(tài)靜態(tài)分離的處理。

  什么是動(dòng)態(tài)文件?

  除了靜態(tài)文件之外,一般都是動(dòng)態(tài)文件。

  特點(diǎn):動(dòng)態(tài)文件一般web服務(wù)器不直接進(jìn)行處理,例如ngnix會(huì)將動(dòng)態(tài)資源轉(zhuǎn)發(fā)給應(yīng)用服務(wù)器(反向代理),讓?xiě)?yīng)用服務(wù)器進(jìn)行處理,并將處理結(jié)果,返給nginx,nginx在將結(jié)果返回瀏覽器。

  什么是應(yīng)用服務(wù)器?

  應(yīng)用服務(wù)器直接面對(duì)的是我們寫(xiě)的程序。

  特點(diǎn):對(duì)接程序函數(shù),處理業(yè)務(wù)邏輯。

  uWSGI是一個(gè)應(yīng)用服務(wù)器。

三:uWSGI和nginx之間通信的簡(jiǎn)單過(guò)程。

uWSGI接到請(qǐng)求后,將請(qǐng)求包進(jìn)行處理,處理成wsgi(一種通信協(xié)議)可以接受的格式,并發(fā)送給wsgi,wsgi根據(jù)請(qǐng)求,調(diào)用應(yīng)用程序中的某個(gè)文件中的某個(gè)函數(shù),進(jìn)行處理,處理完成后,將返回值,再次交給wsgi,wsgi將返回值進(jìn)行打包,打包成uWSGI接受的格式,然后uWSGI將結(jié)果轉(zhuǎn)發(fā)給nginx,ngnix最終將返回值給瀏覽器。

四:為什么分成靜態(tài)服務(wù)器和應(yīng)用服務(wù)器進(jìn)行部署?

  實(shí)現(xiàn)了動(dòng)和靜分離。提高訪問(wèn)靜態(tài)文件的速度。降低對(duì)后臺(tái)的訪問(wèn)。提高了網(wǎng)站的吞吐量。

  實(shí)現(xiàn)動(dòng)靜分離的方式:

  1. 頁(yè)面靜態(tài)化,頁(yè)面靜態(tài)化后的頁(yè)面是放在哪里,硬盤(pán)還是緩存中。

  2. 靜態(tài)文件例如:圖片還有html,css文件時(shí)放在web服務(wù)器上,還是web服務(wù)器的緩存里面?

五:setting.py中的debug=True

我們希望本機(jī)訪問(wèn)的時(shí)候,開(kāi)啟調(diào)試模式,錯(cuò)誤了給錯(cuò)誤信息的詳細(xì)頁(yè)面,其他機(jī)器訪問(wèn)的時(shí)候,關(guān)閉調(diào)試模式,錯(cuò)誤了給他們404頁(yè)面?! ?/p>

socket.gethostname() 返回的是主機(jī)名

# setting.py中改變DEBUG=True
import socket 
if socket.gethostname() == "xxx":
  DEBUG =True
else:
  DEBUG = False

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論