在小公司,我们会碰到这样的需求;通常一个小公司一般只会租用一台服务器,但是为了装逼或者部分原因是为了面子工程,申请了多个域名,很显然多个域名不可能被浪费了,都要挂起来,而且都要被访问到。。。。。 我们知道当一个服务器配置一个域名是比较简单的,只需要把tomcat的端口号改为80就可以,端口号80是默认省略的 。。。 来张图
但是我们知道,一台服务器只有一个 80 端口,一个80端口对应一个域名 ,这是我们常规的思想 。。。。 但是 Nginx牛逼了 。。。。 Nginx 我在这里就不啰嗦了 ,Google 一下你就知道了 。。。。 Nginx有个很牛逼的功能,先来张图。。。
刚刚我们在上面提到了 ,一台服务器只有一个80端口,但是我们可以启动多个tomcat,比如说上图我服务器上有个三个tomcat 分别是 8080,8090,和8099代表三个端口号。。。。
1.第一步:需要将三个域名都映射到同一个服务器上
域名解析这里就不解释了 。。。。 然后我们看下几个域名对应的IP是不是同一个
三个域名都映射到了我们的服务器了 ,那么我们需要再服务器上配置了 ,配置资料
2.第二步:需在服务器上安装Nginx服务上,先不要启动tomcat
安装Nginx 可以Google下,建议使用yum 命令安装 ,网上有很多种安装方法
yum -y update
yum -y install nginx
我使用的是yum安装,你懂得。。。 安装完成之后,启动Nginx
service nginx start //启动
service nginx status //查看状态
service nginx stop //停止
nginx 一旦启动 80端口就被占用了
我们现在要配置的是 ,访问一个域名如果转到对应的tomcat,当然这里是指不同端口的tomcat
然后我们来到nginx的目录
我们首先需要修改下 nginx.conf这个文件
有些版本这里默认是关闭的 ,我yum 安装的这个版本是打开的 ,然后我们到 conf.d 的这个目录下
xxxdl.cn.conf 和 xxxx8.com.conf 是映射域名建立的 ,把上面的default复制下来就行,但是注意文件名称必须以 .conf结尾
listen: xxxx8.com // 域名
service_name : xxxx8.com www.xxxx8.com *.xxxx8.com /// 按这种格式配置
root /hxxxu/tomcat8080/webapps; /// tomcat里面的webapps绝对路径
proxy_pass http://127.0.0.1:8080 tomcat 启动的端口号
你有几个域名,就在conf.d这个文件夹中建立多少个文件,配置跟上面类似,nginx配置完成之后 ,需要重启。。你懂得的。。。。。
第三步:配置tomcat端口 。。。。。
然后修改/etc/profile 文件
上面对应的是tomcat 的绝对目录 ,你有几个tomcat 就搞几个 ,代码如下
JAVA_HOME=/usr/java/jdk1.8.0_112
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH JAVA_HOME CLASSPATH
CATALINA_BASE=/hantu/tomcat8080
CATALINA_HOME=/hantu/tomcat8080
export CATALINA_BASE CATALINA_HOME
CATALINA_2_BASE=/hantu/tomcat8090
CATALINA_2_HOME=/hantu/tomcat8090
export CATALINA_2_BASE CATALINA_2_HOME
TOMCAT_HOME=/hantu/tomcat8080
export TOMCAT_HOME
TOMCAT_2_HOME=/hantu/tomcat8090
export TOMCAT_2_HOME
修改profile之后需要搞一个 命令
source profile 这个就不解释了,Linux命令
然后修改tomcat 的配置 ,到tomcat的 conf目录下 ,然后修改tomcat的一个配置文件server.xml,修改三个端口的值,其实只要保证三个tomcat的端口不一样就可以,,,,
SHUTDOWN端口:默认8005
Connector HTTP端口:默认8080
Connector AJP端口:默认8009
三个Tomcat分别修改他们的值就可以
修改完成之后 。。。 要保证每个Tomcat的三个端口号与其他的都不一样 。。
还需要修改tomcat目录下/bin/catalina.sh 的这个文件
修改上面的这个文件,把其中的
把CATALINA_HOME 和 CATALINA_BASE 全部替换成 你在/etc/profile 文件中自定义的 。。。注意是全部替换,当前主要是为了保证他们不一样 。。。。。 第一个可以替换,然后启动tomcat 。。。
保证多个端口号不一样。。。。
然后保证多个tomcat能启动。。。。。。。。。。 然后 ,就没有然后了。。