目录

1,概述

2,动静分离的配置

3,动静分离的配置正则说明


1,概述

    静动分离,就是将css、js、jpg等静态资源和jsp等动态资源分开处理,以此提高服务器响应速度,提高性能。


2,动静分离的配置

接上面的例子,我们使用的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/

                                       Nginx---与tomcat的动静分离(四)_正则表达式

2,修改conf/nginx.conf的server里面的配置(配置静态资源,以.xxx结尾时访问)

        #动态分离的配置
        location ~* \.(css|js|html)$ {
             root resources;#可以使用相对路径和绝对路径 /usr/resources就是绝对路径
             expires 7d;#有效天数
        }
        location ~* \.(avi|txt|png|gif|jpg|mp3|mp4|rmvb)$ {
             root resources;
             expires 20d;
        }

3,动静分离的配置正则说明

http.server.localtion语法
基本语法: location [=|~|~*|^~]/uri/{...} 
= 严格匹配, 如果这个查询匹配,将停止搜索并立即处理此请求 
~ 区分大小写匹配(可用正则表达式) 
~* 不区分大小写匹配(可用正则表达式) 
!~ 区分大小写匹配 
!~* 不区分大小写匹配 
^~ 如果把这个前缀用于一个常规字符串,那么告诉nginx如果路径匹配那么不测试正则表达式
location = /{
    #只匹配/查询
}
location /{
    #匹配任何查询,因为所有请求都以/开头。但是正则表达式和长的块规则将被优先查询匹配
}
location ^~ /images/{
    #匹配任何以/images/开头的查询并停止搜索。任何正则表达式将不会被测试。
}
​location ~*.(gif|jpg|jpeg)${
    #匹配任何以gif|jpg|jpeg结尾的请求
}