Nginx动静分离

动静分离是通过Nginx配置,将静态请求(如.js,.css,.jpg等)直接由Nginx处理,动态请求(如.php,.jsp等)转发给Tomcat,以提高系统性能。实现方法包括在Nginx配置文件中定义location规则,指定静态文件路径,并设置缓存过期时间,最后重启Nginx应用配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.什么是动静分离

将动态请求和静态请求区分访问

2.为什么要做动静分离

tomcat本身处理静态效率不高,还会带来资源开销.所以使用动静分离,将静态由Nginx处理, 动态由PHP处理或Tomcat处理

3.如何实现动静分离

Nginx根据客户端请求的url来判断请求的是否是静态资源,如果请求的url包含jpg、png,则由Nginx处理。 如果请求的url是.php或者.jsp等等,这个时候这个请求是动态的,将转发给tomcat处理

总结来说,Nginx是通过url来区分请求的类型,并转发给不同的服务端

3.1、首先在Nginx安装的目录下创建一个存放静态文件的文件夹:

#创建存放静态文件的文件夹
mkder /usr/local/nginx/static

3.2、编辑nginx配置文件

vim /usr/local/nginx/conf/nginx.conf

在server标签内部添加如下配置信息

#所有js,css相关的静态资源文件的请求由Nginx处理
location ~.*\.(js|css)$ {
    root    /opt/static-resources; #指定文件路径
    expires     12h; #过期时间为12小时
}
#所有图片等多媒体相关静态资源文件的请求由Nginx处理
location ~.*\.(html|jpg|jpeg|png|bmp|gif|ico|mp3|mid|wma|mp4|swf|flv|rar|zip|txt|doc|ppt|xls|pdf)$ {
    root    /opt/static-resources; #指定文件路径
    expires     7d; #过期时间为7天
}

3.4、重启Nginx

#切换到nginx目录下
cd /usr/local/nginx
​
#进入操作命令文件夹
cd /sbin
​
#重启
./nginx -s reload

测试实现!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值