1.什么是反向代理

使用nginx实现反向代理,Nginx只做请求的转发,后台有多个http服务器提供服务,nginx的功能就是把请求转发给后面的服务器,决定把请求转发给谁。

2.在一个虚拟机上创建两个tomcat实例,模拟多个服务器。

  Nginx反向代理就是通过访问不同的域名访问运行在不同端口的tomcat ,这里在hosts文件 中配置 www.test80.com 和 www.test82.com两个域名,

对应的ip都是我虚拟机上的安装了nginx的centos系统的ip地址192.168.93.130,通过模拟Nginx反向代理,实现 www.test80.com 访问运行8080端口的tomcat,www.test82.com访问运行8082端口的tomcat

2.1 在线安装tomcat

[root@localhost local]# su liuch

[liuch@localhost local]$ ls

bin  etc  games  include  lib  lib64  libexec  nginx  nginx-1.16.0  nginx-1.16.0.tar.gz  sbin  share  src

[liuch@localhost local]$ su root

Password:

[root@localhost local]#  wget https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.42/bin/apache-tomcat-8.5.42.tar.gz --no-check-certificate

--2019-06-16 06:13:43--  https://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.5.42/bin/apache-tomcat-8.5.42.tar.gz

Resolving mirrors.cnnic.cn... 101.6.8.193, 2402:f000:1:408:8100::1

Connecting to mirrors.cnnic.cn|101.6.8.193|:443... connected.

WARNING: certificate common name “*.tuna.tsinghua.edu.cn” doesn’t match requested host name “mirrors.cnnic.cn”.

HTTP request sent, awaiting response... 200 OK

Length: 9711748 (9.3M) [application/x-gzip]

Saving to: “apache-tomcat-8.5.42.tar.gz”

100%[==========================================================================================================>] 9,711,748   1.45M/s   in 6.4s

2019-06-16 06:13:50 (1.44 MB/s) - “apache-tomcat-8.5.42.tar.gz” saved [9711748/9711748]

[root@localhost local]# ls

apache-tomcat-8.5.42.tar.gz  bin  etc  games  include  lib  lib64  libexec  nginx  nginx-1.16.0  nginx-1.16.0.tar.gz  sbin  share  src

[root@localhost local]#

2.2 解压

2.3 创建tomcats目录并复制两个tomcat

2.4修改tomcat配置(在同一台机器上运行两个tomcat,需要设置tomcat的端口不同)

修改tomcat2的server.xml

  

2.5修改tomcat首页,以区分两个tomcat

 

2.6 启动tomcat,并开放8082端口(直接访问 192.168.93.130:8082会访问不通,被拦截器拦住了)

开放8082端口:

访问测试

 

3. 配置Nginx反向代理

在上面的基础上,配置nginx的反向代理服务,这时nginx仅仅是做请求转发

/usr/local/nginx/sbin/nginx -s reload 重新加载nginx配置文件后 测试,可以看到域名为www.test80.com的请求,被转发到了端口号为8080的tomcat服务器上

来自www.test82.com的请求,被转发到了端口号为8082的tomcat服务器上:

4.模拟nginx 负载均衡配置

如果在同一个域名下有多台服务器提供服务,此时需要nginx来进行负载均衡。

Nginx负载均衡服务器:192.168.93.130

Tomcat1服务器:192.168.93.130:8080

Tomcat2服务器:192.168.93.130:8082,在前面的基础上,nginx.conf配置稍作如下改动:把tomcatserver2 的反向代理配置及proxy_pass注释掉,

在tomcatserver1下面添加一台服务器 server  192.168.93.130:8082; 即可

此时访问http://www.test80.com/ ,可以看到8080端口的tomcat1,8082端口的tomcat2轮流处理请求:(nginx默认的负载均衡策略是轮询)

最新文章

  1. python,django做中间件屏蔽非法访问
  2. myeclipse2014激活
  3. c# 中基类变量指向派生类对象的实例化
  4. 简述JavaScript的运行机制
  5. HDU 1264 Counting Squares(线段树求面积的并)
  6. java反射学习
  7. 简述负载均衡&CDN技术
  8. motan源码解读:注册中心zookeeper(1)
  9. 可以支持jQuery1.10.1 的 fancybox 1.3.4, 並現在type為Ajax時,也可以定義窗口的大小。
  10. poj 3694 Network
  11. 小白日记19:kali渗透测试之选择和修改EXP
  12. 一个解析cgi参数的SHELL脚本
  13. Beyond Compare 使用介绍
  14. php 读xml的两种方式
  15. Akka(4): Routers - 智能任务分配
  16. EventBus 事件总线之我的理解
  17. AtCoder Grand Contest 019
  18. redis 安装实战(10步完成安装)
  19. MySql 双主多从配置指导
  20. 基于SDL2实现俄罗斯方块

热门文章

  1. 剑指 Offer——最小的 K 个数
  2. PriorityBlockingQueue 源码分析
  3. 【SQL SERVER】 搭建AlwaysON高可用组
  4. Codeforces Round #573
  5. Delphi XE2 之 FireMonkey 入门(25) - 数据绑定: TBindingsList: 表达式的灵活性及表达式函数
  6. JavaScript 基础类型,数据类型
  7. 45 MySQL自增id
  8. @SuppressWarnings https://www.cnblogs.com/fsjohnhuang/p/4040785.html
  9. django在线教育网站开发---需求分析
  10. oracle--对象权限