Nginx动静分离
因为Nginx在处理静态资源的时候,效率是非常高的,而且Nginx的并发访问量也是名列前茅,而Tomcat则相对比较弱一些,所以把静态资源交个Nginx后,可以减轻Tomcat服务器的访问压力并提高静态资源的访问速度。动静分离以后,降低了动态资源和静态资源的耦合度。如动态资源宕机了也不影响静态资源的展示。
环境配置
使用Nginx的反向代理,将请求转给Tomcat进行处理。
1 2 3 4 5 6 7 8 9 10
   | upstream webservice { 	server 192.168.200.146:8080; # web服务器的地址 } server{     listen		80;     server_name localhost;     location /demo {     	proxy_pass http://webservice;     } }
  | 
 
具体实现
1.将demo.war项目中的静态资源都删除掉,重新打包生成一个war包
2.将war包部署到tomcat中,把之前部署的内容删除掉
1 2 3
   | 进入到tomcat的webapps目录下,将之前的内容删除掉 将新的war包复制到webapps下 将tomcat启动
   | 
 
3.在Nginx所在服务器创建如下目录,并将对应的静态资源放入指定的位置

其中index.html页面的内容如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
   | <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <title>Title</title>     <script src="js/jquery.min.js"></script>     <script>         $(function(){            $.get('http://192.168.200.133/demo/getAddress',function(data){                $("#msg").html(data);            });         });     </script> </head> <body>     <img src="images/logo.png"/>     <h1>Nginx如何将请求转发到后端服务器</h1>     <h3 id="msg"></h3>     <img src="images/mv.png"/> </body> </html>
 
   | 
 
4.配置Nginx的静态资源与动态资源的访问
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
   | upstream webservice{    server 192.168.200.146:8080; } server {         listen       80;         server_name  localhost;
          #动态资源         location /demo {                 proxy_pass http://webservice;         }         #静态资源         location ~/.*\.(png|jpg|gif|js){                 root html/web;                 gzip on;         }
          location / {             root   html/web;             index  index.html;         } }
  |