動靜分離是讓動態網站裏的動態網頁根據必定規則把不變的資源和常常變的資源區分開來,動靜資源作好了拆分之後,咱們就能夠根據靜態資源的特色將其作緩存操做,這就是網站靜態化處理的核心思路
動靜分離簡單的歸納是:動態文件與靜態文件的分離。css
軟件開發中,有些請求是須要後臺處理的(如:.jsp,.do等等),有些請求是不須要通過後臺處理的(如:css、html、jpg、js等等文件),這些不須要通過後臺處理的文件稱爲靜態文件,不然動態文件。所以咱們後臺處理忽略靜態文件。這會有人又說那我後臺忽略靜態文件不就完了嗎。固然這是能夠的,可是這樣後臺的請求次數就明顯增多了。在咱們對資源的響應速度有要求的時候,咱們應該使用這種動靜分離的策略去解決。
動靜分離將網站靜態資源(HTML,JavaScript,CSS,img等文件)與後臺應用分開部署,提升用戶訪問靜態代碼的速度,下降對後臺應用訪問。這裏咱們將靜態資源放到nginx中,動態資源轉發到tomcat服務器中。html
###靜態資源訪問 server { listen 80; server_name static.tmp.com; location /static/imgs { root data/tmp; index index.html index.htm; } } ###動態資源訪問 server { listen 80; server_name www.tmp.com; location / { proxy_pass http://127.0.0.1:8080; index index.html index.htm; } }