Tomcat Nginx的动静分离

1.单机反向代理:

实验 :7-3 做客户机,7-2做代理服务器,7-1 tomcat 服务器 数据传输从7-3到7-2到7-1

配置:

7-1为之前的虚拟机配置

7-2做代理服务器配置:

7-3客户机配置:

测试:

2.反向代理多机:

静态资源nginx自己响应,动态资源转交给tomcat响应

实验:Nginx要开启upstream(负载均衡)、location(url链接)、proxy_pass(反向代理)
配置:7-1做nginx代理服务器;7-2和 7-3做Tomcat服务器

配置:

7-1安装nginx;7-3 和 7-2安装Tomcat;都开启服务!

配置7-1Nginx服务器:

bash 复制代码
 vim /etc/nginx/conf/nginx.conf
 
 17 http {
 18      upstream   tomcat {
 19      server     192.168.91.4:8080;
 20      server     192.168.91.5:8080;
 21 }
 
 48         location  ~* \.(jpg|png)$  {
 49         root      /data/html;
 50 }
 51 
 52         location  /  {
 53         proxy_pass  http://tomcat;
 54 }

建立静态资源存放在本机中

配置7-2Tomcat服务器:

bash 复制代码
[root@localhost ~]# cd /usr/local/tomcat/webapps/ROOT
[root@localhost ROOT]# 
[root@localhost ROOT]# ls
asf-logo-wide.svg  bg-upper.png       tomcat.css        tomcat.svg
bg-button.png      favicon.ico        tomcat.gif        WEB-INF
bg-middle.png      index.jsp          tomcat.png
bg-nav.png         RELEASE-NOTES.txt  tomcat-power.gif
[root@localhost ROOT]# 
[root@localhost ROOT]# vim test.jsp
[root@localhost ROOT]# cat test.jsp
7-2
[root@localhost ROOT]#

配置7-3Tomcat服务器 :

bash 复制代码
[root@centos1 ~]# cd /usr/local/tomcat/webapps/ROOT
[root@centos1 ROOT]# ls
asf-logo-wide.svg  bg-upper.png       tomcat.css        tomcat.svg
bg-button.png      favicon.ico        tomcat.gif        WEB-INF
bg-middle.png      index.jsp          tomcat.png
bg-nav.png         RELEASE-NOTES.txt  tomcat-power.gif
[root@centos1 ROOT]# vim test.jsp
[root@centos1 ROOT]# cat test.jsp
7-1
[root@centos1 ROOT]#

测试:

3.反向代理多机多级:

实验:7-3为Nginx代理服务器;7-4和7-5为Nginx服务器;7-1和7-2为Tomcat服务器
配置:

7-1:192.168.91.3

7-2:192.168.91.4

7-3:192.168.91.5

7-4:192.168.91.7

7-5:192.168.91.8

第一层:

7-3Nginx代理服务器传内容给7-4和7-5Nginx服务器

配置:

配置7-3Nginx代理服务器:
bash 复制代码
 vim /etc/nginx/nginx.conf
 17 http {
 18      upstream   web {
 19      server     192.168.91.7;
 20      server     192.168.91.8;
 21 }
 
 48         location  /  {
 49         proxy_pass  http://web;
 50 }
 51 
配置7-4Nginx服务器:
bash 复制代码
[root@centos4 ~]# vim /usr/share/nginx/html/index.html
[root@centos4 ~]# 
[root@centos4 ~]# cat /usr/share/nginx/html/index.html
7-4
[root@centos4 ~]#
配置7-5Nginx服务器:
bash 复制代码
[root@centos5 ~]# vim /usr/share/nginx/html/index.html
[root@centos5 ~]# cat /usr/share/nginx/html/index.html
7-5
[root@centos5 ~]#

测试:

bash 复制代码
[root@localhost ~]# curl 192.168.91.5
7-4
[root@localhost ~]# curl 192.168.91.5
7-5
[root@localhost ~]# curl 192.168.91.5
7-4
[root@localhost ~]#

第二层:

7-4和7-5Nginx服务器传内容给7-1和7-2Tomcat服务器

配置:

配置7-4Nginx服务器:
bash 复制代码
 vim /etc/nginx/nginx.conf
 
 29     upstream  tomcat  {
 30         server 192.168.91.3:8080;
 31         server 192.168.91.4:8080;
 32 }
 
 
 48         location ~*  \.jsp$  {
 49         proxy_pass  http://tomcat;
 50 }
 51 
 52         location ~*  \.html$  {
 53         root        /usr/share/nginx/html;
 54 }
配置7-5Nginx服务器:
bash 复制代码
 vim /etc/nginx/nginx.conf
 
 30     upstream  tomcat  {
 31         server  192.168.91.3:8080;
 32         server  192.168.91.4:8080;
 33 }
 
 49         location  ~* \.jsp$ {
 50         proxy_pass      http://tomcat;
 51 }
 52 
 53         location  ~* \.html$ {
 54         root            /usr/share/nginx/html;
 55 }

测试:

curl访问,验证第二层配置(7-3Nginx代理服务器 传内容给 7-4和7-5Nginx服务器;再给到7-1和7-2Tomcat服务器

当访问静态资源(.html)时:
bash 复制代码
[root@localhost ~]# curl 192.168.91.5/index.html
7-5
[root@localhost ~]# curl 192.168.91.5/index.html
7-4
[root@localhost ~]# curl 192.168.91.5/index.html
7-5
[root@localhost ~]# 
当访问动态资源(.jsp)时:
bash 复制代码
[root@localhost ~]# curl 192.168.91.5/test.jsp
7-1
[root@localhost ~]# curl 192.168.91.5/test.jsp
7-1
[root@localhost ~]# curl 192.168.91.5/test.jsp
7-2
[root@localhost ~]# curl 192.168.91.5/test.jsp
7-2
[root@localhost ~]#
相关推荐
theo.wu1 小时前
使用Buildpacks构建Docker镜像
运维·docker·容器
Lansonli1 小时前
云原生(四十八) | Nginx软件安装部署
nginx·云原生·ecs服务器
枫叶丹43 小时前
【在Linux世界中追寻伟大的One Piece】进程信号
linux·运维·服务器
刻词梨木3 小时前
ubuntu中挂载点内存不足,分配不合理后使用软链接的注意事项
linux·运维·ubuntu
灯火不休ᝰ4 小时前
[win7] win7系统的下载及在虚拟机中详细安装过程(附有下载文件)
linux·运维·服务器
加油,旭杏7 小时前
【中间件学习】fastCG介绍和使用
学习·nginx·fastcgi
HHoao8 小时前
Ubuntu启动后第一次需要很久才能启动GTK应用问题
linux·运维·ubuntu
小灰兔的小白兔8 小时前
【Ubuntu】Ubuntu常用命令
linux·运维·ubuntu
winds~8 小时前
ubuntu中软件的进程管理-结束软件运行
linux·运维·ubuntu
bush48 小时前
使用root账号ssh登录虚拟机ubuntu
运维·ubuntu·ssh