部署情况说:
多个域名,其中2个域名需支持泛域名解析
1、www.abc.com
2、www.bcd.com
3、*.efg.com
4、*.hij.com
其中1,2,3为一台tomcat
4为独立tomcat
前端一台nginx
通过配置多个虚拟主机来实现该部署。
===============================
进入/etc/nginx/conf.d目录,所有虚拟主机的配置文件都在该目录下存放,配置。
1,2配置简单。
nginx.conf最后一行包含以下文字:
include/etc/nginx/conf.d/*.conf;
表示配置虚拟主机文件在/conf.d文件夹中
在/etc/nginx/conf.d文件夹中创建2个配置文件tomcat1.conftomcat2.conf
tomcat1.conf
server{listen80;
server_nametomcat1.abc.net;
location/{
proxy_passhttp://192.168.1.2:8080;
}
} tomcat2.conf server{
listen80;
server_nametomcat2.abc.net;
location/{
proxy_passhttp://192.168.1.3:8080;
}
} 配置完成保存。
调用nginx-t测试配置文件是否正确。
没有错误,启动nginx
============================
进入host文件配置域名指向nginx所在主机IP
192.168.1.1tomcat1.abc.nettomcat2.abc.net
打开浏览器访问2个域名,出现不同的内容,证明配置正确。 3配置需支持泛域名 #
#AvirtualhostusingmixofIP-,name-,andport-basedconfiguration
#
server{
listen81;
server_name*.efg.com;
location/{
proxy_passhttp://localhost:8080;
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
}
} 4配置 #
#AvirtualhostusingmixofIP-,name-,andport-basedconfiguration
server{
listen81;
server_name*.hij.com;
location/{
proxy_passhttp://localhost:8081;
proxy_set_headerHost$host;
proxy_set_headerX-Real-IP$remote_addr;
proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;
}
} 泛域名解析关键为红色部分,如果没有红色部分,后端8080及8081口对应的tomcat虚拟主机将无法获得域名信息,导致后端tomcat无法获取到对应的域名信息。
后端TOMCAT支持泛域名解析时,需要设置hostname为localhost以支持泛域名指向。
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。