Nginx(五):动静分离
1、概念基礎(chǔ)
Nginx動(dòng)靜分離簡(jiǎn)單來(lái)說(shuō)就是把動(dòng)態(tài)請(qǐng)求和靜態(tài)請(qǐng)求分開(kāi),不能理解成只是單純的把動(dòng)態(tài)頁(yè)面靜態(tài)頁(yè)面的物理分離。嚴(yán)格意義上說(shuō)應(yīng)該是動(dòng)態(tài)請(qǐng)求跟靜態(tài)請(qǐng)求的分開(kāi),可以理解成使用Nginx處理靜態(tài)頁(yè)面,Tomcat處理動(dòng)態(tài)頁(yè)面。動(dòng)靜分離從目前實(shí)現(xiàn)角度來(lái)講大致分為兩種。
一種是單純的把靜態(tài)文件獨(dú)立成單獨(dú)的域名,放在獨(dú)立的服務(wù)器上,也是目前主流的推崇方案。另外一種是動(dòng)態(tài)和靜態(tài)文件混合一起發(fā)布,通過(guò)nginx來(lái)分開(kāi)。
通過(guò) location 指定不同的后綴名實(shí)現(xiàn)不同的請(qǐng)求轉(zhuǎn)發(fā)。通過(guò)expires參數(shù)設(shè)置,可以使瀏覽器緩存過(guò)期時(shí)間,減少與服務(wù)器之前的請(qǐng)求和流量。具體 Expires 定義:是給一個(gè)資源設(shè)定一個(gè)過(guò)期時(shí)間,也就是說(shuō)無(wú)需去服務(wù)端驗(yàn)證,直接通過(guò)瀏覽器自身確認(rèn)是否過(guò)期即可,所以不會(huì)產(chǎn)生額外的流量:此種方法非常適合不經(jīng)常變動(dòng)的資源。(如果經(jīng)常更新的文件,不建議使用 Expires 來(lái)緩存),我這里設(shè)置 3d,表示在這B天之內(nèi)訪問(wèn)這個(gè) URL,發(fā)送一個(gè)請(qǐng)求,比對(duì)服務(wù)器該文件最后更新時(shí)間沒(méi)有變化,則不會(huì)從服務(wù)器抓取,返回狀態(tài)碼304,如果有修改,則直接從服務(wù)器重新下載,返回狀態(tài)碼 200.
2、動(dòng)靜分離實(shí)例
2.1、準(zhǔn)備工作
在Linux系統(tǒng)中準(zhǔn)備靜態(tài)資源,用于進(jìn)行訪問(wèn)。
準(zhǔn)備/data/image/和/data/www/
2.2、修改配置文件
2.3、最終測(cè)試
瀏覽器中輸入地址
http://localhost/image/01.jpg
http://localhost/www/test.html
總結(jié)
以上是生活随笔為你收集整理的Nginx(五):动静分离的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java集合:Set集合
- 下一篇: Nginx的11个执行流程