一臺Nginx帶多個域名多個tomcat情況的配置
部署情況說:
多個域名,其中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配置簡單。可參考 http://wutaoo.iteye.com/blog/1167559
3 配置 需支持泛域名
A virtual host using mix of IP-, name-, and port-based configuration
server {
listen 81;
server_name *.efg.com;
location / {
proxy_pass http://localhost: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;
}
}
</div>
4 配置
A virtual host using mix of IP-, name-, and port-based configuration
server {
listen 81;
server_name *.hij.com;
location / {
proxy_pass http://localhost:8081;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
</div>
泛域名解析關鍵為紅色部分,如果沒有紅色部分,后端8080及8081口對應的tomcat虛擬主機將無法獲得域名信息,導致后端tomcat無法獲取到對應的域名信息。
后端TOMCAT支持泛域名解析時,需要設置 host name 為 localhost 以支持泛域名指向。