Nginx代理多个TomcatWeb应用

同一台Linux机器Nginx代理多个Tomcat应用

一些企业的官网,访问量不是很大,但是只部署一个应用在一台服务器上,怎么感觉都是浪费。这时候一般都是一台服务器上部署多个应用,使用不同的域名进行访问。基于这个需求,给大家分享一下“一个Nginx服务器代理多个Tomcat(一个Tomcat单个应用)站点”的反向代理配置,实现节省服务器开支

所需要安装的软件

安装JDK详见 JDK在Linux下的安装配置

安装Tomcat详见 Nginx在Linux下的安装配置

安装Nginx详见 Nginx 在Linux下的安装配置

验证以上安装的软件已经是正常工作

1.Java

2.Tomcat(默认端口8080)

3.Nginx(默认端口80)

以下我用三个网站项目工程做Demo

1.Demo1(单独部署时,访问根如:http://localhost:8080/ 出现页面显示“这是Demo1项目”)

2.Demo2(单独部署时,访问根如:http://localhost:8080/ 出现页面显示“这是Demo2项目”)

3.Demo3(单独部署时,访问根如:http://localhost:8080/ 出现页面显示“这是Demo3项目”)

以下我用三个域名来对应三个项目整体架构

准备三个Tomcat的Web服务器

查看默认配置

修改配置三个Tomcat配置

部署项目

启动三个Tomcat

这里的三个tomcat是复制过来的,所有bin目录下的命令都有权限执行

验证三个Tomcat能通过IP和端口正常访问

修改Nginx

添加配置

编辑主配置文件

创建配置文件

重启Nginx

修改服务器本地映射

修改window本地映射

为什么要配置这里呢?

因为这里的域名是不是真正的经过DNS服务器转发的域名,所以通过配置hosts文件进行本地装发来模拟域名访问

验证

出现:

原因

解决

结果

本案例讲解的是使用同一台服务器,模拟一个Nginx代理三个tomcat的应用,通过上面顺序步骤的配置,即可实现此功能

之后还会有一个Nginx代理一个Tomcat的多个应用及一个应用的负载配置,敬请关注

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180109G0TEX700?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券