一个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 "%r" %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 "%r" %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目录如下图: