2013-09-29 09:09:01
来 源
ITJS.CN
Nginx
这里分享一下使用Nginx反代多个tomcat网站的配置,希望对于初学Nginx服务器相关的朋友有帮助,更多Nginx安装、配置、报错处理等资源请本站内搜索。。

部署情况说:

多个域名,其中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以支持泛域名指向。

声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。