nginx服務器詳解(6.動靜分離)

一,概述

靜動分離,就是將css、js、jpg等靜態資源和jsp等動態資源分開處理,以此提高服務器響應速度,提高性能。

二,動靜分離的配置

接上面的例子,我們使用的erp系統。查看erp裏面的靜態文件的路徑可以看出

<link rel="stylesheet" href="${ctx }/resources/layui/css/layui.css" media="all" />

因爲項目的發佈名爲erp所有要按下面的規則來設置動靜分離

  1. 把tomcat1裏面的webapps/erp/resources 拷貝到nginx/裏面

#在nginx下創建resources目錄
mkdir resources
#在resources下面創建erp目錄
cp -r /root/software/tomcat1/webapps/erp/resources/ /usr/nginx/
在這裏插入圖片描述

  1. 修改conf/nginx.conf的server裏面的配置

#動態分離的配置
location ~* .(css|js|html)$ {
root resources;#可以使用相對路徑和絕對路徑 /usr/resources就是絕對路徑
expires 7d;#有效天數
}
location ~* .(avi|txt|png|gif|jpg|mp3|mp4|rmvb)$ {
root resources;
expires 20d;
}

  1. 動靜分離的配置正則說明

http.server.localtion語法
基本語法: location [=|||^~]/uri/{…}
= 嚴格匹配, 如果這個查詢匹配,將停止搜索並立即處理此請求
~ 區分大小寫匹配(可用正則表達式)
~
不區分大小寫匹配(可用正則表達式)
!~ 區分大小寫匹配
!~* 不區分大小寫匹配
^~ 如果把這個前綴用於一個常規字符串,那麼告訴nginx如果路徑匹配那麼不測試正則表達式
location = /{
#只匹配/查詢
}
location /{
#匹配任何查詢,因爲所有請求都以/開頭。但是正則表達式和長的塊規則將被優先查詢匹配
}
location ^~ /images/{
#匹配任何以/images/開頭的查詢並停止搜索。任何正則表達式將不會被測試。
}
location ~*.(gif|jpg|jpeg)${
#匹配任何以gif|jpg|jpeg結尾的請求
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章