一个IP,一个linux服务器,两个项目,两个域名;如何将两个域名配置到同一个IP的两个项目中。

一、现有资源:

1、阿里云centOS6.5服务器;

2、安装tomcat8.0+JDK;

3、两个不同maven项目的war包,项目名分别为cloud、am;

4、两个域名http://www.lureed.top/ 、 http://www.horace.space/,且已经成功解析到同一个IP。

二、简单方法

在服务器不同目录下解压两个tomcat用不同的端口号,比如一个是8080,另一个是8088;IP就分别是:

http://www.lureed.top:8080/

http://www.horace.space:8088/

但是这种IP太丑了,不管是自己用,还是推广给客户都是很low的,所以不推荐这种方法。

三、实用方法

1、Tomcat去除项目名称和端口号,直接使用ip地址访问项目

详情见链接:http://www.cnblogs.com/banma/p/6101340.html

2、将tomcat下的webapps文件复制一份到同一目录下如下图所示为webapps2

3、修改sever.xml配置文件

先将<Engine>标签下的<Host>标签复制一份到<Engine>标签下,然后修改如下

<Engine name="Catalina" defaultHost="localhost">

      <Realm className="org.apache.catalina.realm.LockOutRealm">
        <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
               resourceName="UserDatabase"/>
      </Realm>

      <Host name="www.lureed.top"  appBase="webapps"
            unpackWARs="true" autoDeploy="true" 
        xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="cloud" debug="0"/>
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>
      <Host name="www.horace.space"  appBase="webapps2"
            unpackWARs="true" autoDeploy="true"
        xmlValidation="false" xmlNamespaceAware="false">
    <Context path="" docBase="am" debug="0"/>
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log" suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />

      </Host>
    </Engine>

对host标签进行一些解释

I、name="www.horace.space",name为域名

II、appBase="webapps2",appBase为项目war包存放目录。tomcat默认为webapps.

III、<Context path="" docBase="am" debug="0"/>,Context标签中的docBase为目录下存放的项目名

这三点必须修改,缺一不可。

webapps2目录如下图:

原文地址:https://www.cnblogs.com/banma/p/6346945.html