什么是动静分离?

动静分离是为了提高网站性能,通过Nginx区分并处理静态和动态请求,避免资源浪费。文章介绍了如何通过Nginx判断URL类型,实现静态资源由Nginx直接响应,动态请求转发至Tomcat。同时,讲解了Rewrite用于URL重写和跳转的原理,包括set、if、return等指令的使用,以及在实际开发和运维中的应用。
摘要由CSDN通过智能技术生成

1.什么是动静分离?

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

2.为什么要做动静分离?

静态由Nginx处理, 动态由PHP处理或Tomcat处理....
因为Tomcat程序本身是用来处理jsp代码的,但tomcat也能处理静态资源.
tomcat本身处理静态效率不高,还会带来资源开销.

3.如何实现动静分离?

Nginx根据客户端请求的url来判断请求的是否是静态资源,如果请求的url包含jpg、png,则由Nginx处理。
如果请求的url是.php或者.jsp等等,这个时候这个请求是动态的,将转发给tomcat处理。
总结来说,Nginx是通过url来区分请求的类型,并转发给不同的服务端。

4.单机实现动静分离实战

    [root@web01 ~]# yum install java tomcat -y
​   [root@web01 ~]# mkdir /usr/share/tomcat/webapps/ROOT        -->主要站点根目录
​   [root@web01 ~]# vi /usr/share/tomcat/webapps/ROOT/index.jsp
​   <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
​   <html>

      <head>
        <title>Nginx+Tomcat</title>
      </head>

​     <body>
​         <%
​           Random rand = new Random();
​           out.println("<h2>动态资源</h2>");
​           out.println(rand.nextInt(99)+100);
​       %>

        <h2>静态图片</h2>

​       <img src="nginx.png" />
​     </body>
​   </html>
[root@web01 ~]# wget -O /usr/share/tomcat/webapps/ROOT/nginx.png http://nginx.org/nginx.png
[root@web01 ~]# systemctl start tomcat
tomcat监听在8080端口上:

#配置Nginx 
[root@web01 conf.d]# cat ds.oldxu.com.conf 
server {
    listen 80;
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值