nginx动静分离

nginx的动静分离


在项目中通常会使用到大量的css,js,img等静态资源文件
不管是传统项目还是spa项目都是如此,需要将静态资源文件引入

在这里插入图片描述
nodejs1和nodejs2都要引入相同的静态资源,后续如果要做服务器水平扩展时,nodejs3,nodejs4都需要引入相同的静态资源,浪费服务器资源

动静分离原理图:
tomcat1,tomcat2存放的是处理动态请求的文件
在这里插入图片描述

实现静态分离

1)先搞一个静态资源服务器

copy宿主机nginx共享目录一份:nginx2

在这里插入图片描述
在这里插入图片描述
修改host文件

hosts:192.168.1.31 static.feidao.com

在这里插入图片描述
挂载:
需要建一个存放静态资源的目录,然后执行以下命令

docker run -it -p 1010:1010 --name=staticNginx -v /home/data/nginx2:/etc/nginx  -v /home/data/nginx2data:/home/nginx  6678c7c2e56c(镜像id)

执行之后查看
在这里插入图片描述

修改nginx2中nginx.conf与default.conf文件

nginx.conf中不要配置upstream,因为nginx2只是用作静态资源服务器用,并非是代理服务器
在这里插入图片描述
default.conf配置如下:

listen       1010;
server_name  static.feidao.com;

#charset koi8-r;
#access_log  /var/log/nginx/host.access.log  main;

location / {
root   /home/nginx;
#proxy_pass   http://172.17.0.3:8080;
#proxy_pass   http://www.feidao.com;
index  index.html index.htm;
}

在这里插入图片描述
别忘了重启staticNginx

新建nginx2data目录引入静态资源
在这里插入图片描述

输入: http://static.feidao.com:1010/
在这里插入图片描述

静态资源服务器搞出来了

2)现在有web服务器两台tomcat1、tomcat2,静态资源服务器一台staticNginx,可以更改代理服务器myNginx的配置了;

nginx.conf配置如下:

 #gzip  on;
    
    upstream www.feidao.com{
         server 172.17.0.3:8080 weight=1;
         server 172.17.0.2:9090 weight=2;
    }
    upstream static.feidao.com{
         server 172.17.0.5:1010;
    }

    include /etc/nginx/conf.d/*.conf;

在这里插入图片描述
default.conf配置如下:

 listen       80;
    server_name  www.feidao.com;

    #charset koi8-r;
    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        #root   /usr/share/nginx/html;
        #proxy_pass   http://172.17.0.3:8080;
        proxy_pass   http://www.feidao.com;
        index  index.html index.htm;
    }

    location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {
	proxy_pass http://static.feidao.com;
	}
	
	location ~ .*\.(js|css)?$ {
	   proxy_pass http://static.feidao.com;
	}
	
	location ~ .*\.(html)?$ {
	   proxy_pass http://static.feidao.com;
	}

在这里插入图片描述

3)修改tomcat1、tomcat2中的index.jsp,方便myNginx代理服务器的代理效果

tomcat1中的index.jsp修改如下
在这里插入图片描述
tomcat2修改
在这里插入图片描述

4)最终动静分离效果

输入: http://www.feidao.com/

出现下图算是动静分离成功

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值