官术网_书友最值得收藏!

4.4.3 動靜分離

在介紹動靜分離之前,需先了解動態(tài)和靜態(tài)。所謂動態(tài),指的是需更新編譯處理的資源,如JSP/PHP。相對由服務端編程語言實現(xiàn)的頁面,這種頁面需要在服務端動態(tài)處理。所謂靜態(tài),指的是不需要更新編譯的資源,如CSS/JSS/HTML等。

Nginx實現(xiàn)動靜分離:在利用反向代理的過程中,Nginx會判斷是否是靜態(tài)的資源,如果是,則直接從Nginx發(fā)布的路徑去讀取,而不需要從后端服務器獲取。

動靜分離優(yōu)勢:充分利用服務器資源,減少不必要的請求,減少后端服務器的壓力,快速提高頁面加載速度。

Nginx實現(xiàn)動靜分離的方法如代清單碼4-6所示。

代碼清單4-6 Nginx實現(xiàn)動靜分離

location / {
    root   /root;               #定義服務器的默認網(wǎng)站根目錄位置
    index index.html index.htm; #定義首頁索引文件的名稱
}
# 定義錯誤提示頁面
error_page   500 502 503 504 /50x.html;
    location = /50x.html {
    root   /root;
}
#靜態(tài)文件,Nginx自己處理
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
    root /zachary/shop;
    #過期5天
    expires 5d;
}

當瀏覽器請求獲取靜態(tài)資源時,若瀏覽器請求的響應狀態(tài)碼為304,其表示從緩存中獲取靜態(tài)資源,而Nginx可以對靜態(tài)資源進行緩存,則當下次瀏覽器再請求靜態(tài)資源時,如資源未變更,后續(xù)請求會從瀏覽器緩存中讀取加載。

注意

瀏覽器獲取靜態(tài)資源不請求后端服務器,從而達到動靜分離的效果。

主站蜘蛛池模板: 永川市| 中西区| 南京市| 进贤县| 石棉县| 临泉县| 四子王旗| 托克托县| 改则县| 江达县| 长葛市| 乌鲁木齐县| 开封县| 星座| 博爱县| 内江市| 沛县| 郁南县| 兴和县| 司法| 祁连县| 报价| 林周县| 永川市| 镇赉县| 灵寿县| 博乐市| 鲁甸县| 福鼎市| 托克逊县| 民勤县| 资中县| 江川县| 恩平市| 塔河县| 乌鲁木齐县| 邵阳市| 绥中县| 社旗县| 民乐县| 巴彦淖尔市|