您的位置:首页 > 运维架构 > Tomcat

Nginx和Tomcat一台服务器配置多个域名

2017-08-01 11:38 337 查看
在小公司,我们会碰到这样的需求;通常一个小公司一般只会租用一台服务器,但是为了装逼或者部分原因是为了面子工程,申请了多个域名,很显然多个域名不可能被浪费了,都要挂起来,而且都要被访问到。。。。。 我们知道当一个服务器配置一个域名是比较简单的,只需要把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能启动。。。。。。。。。。 然后 ,就没有然后了。。 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息