把Tomcat下几个项目分别配置成二级域名(主域名配置一样):
a 项目 配置成 http://a.domain.com
b 项目 配置成 http://b.domain.com
1、修改端口号:
1 2 3 4 5 |
找到 <Connector port="端口号" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> 如果端口号为 80 ,则请求链接可以不带端口号 |
2、配置Tomcat虚拟目录
1 2 3 4 5 6 7 8 9 10 11 12 |
找到 <Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"></Host> 修改成: 例如:a.domain.com为你的域名 <Host name="a.domain.com" appBase="webapps/a.domain.com" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"></Host> <Host name="b.domain.com" appBase="webapps/b.domain.com" unpackWARs="true" autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false"></Host> |
3、拷贝程序到tomcat/webapps下
在tomcat/webapps下创建文件夹
1 2 3 4 |
#a.domain.com为你的域名 mkdir a.domain.com #b.domain.com为你的域名 mkdir b.domain.com |
然后拷贝a项目的war包到a.domain.com/文件夹下,并重命名为ROOT.war
接着拷贝b项目的war包到b.domain.com/文件夹下,并重命名为ROOT.war
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
server { listen 80; server_name a.domain.com; location / { proxy_pass http://a.domain.com:8080; #(Tomcat端口,如是80,可以不带) proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } server { listen 80; server_name b.domain.com; location / { proxy_pass http://b.domain.com:8080; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } |
1 |
127.0.0.1 a.domain.com b.domain.com |
配置成功。
启动服务在本地可以:
ping a.domain.com
ping b.domain.com 都是可以ping通的。
注:nginx 配置虚拟目录名称 必须与 tomcat配置一样。
暂无评论