1. 程式人生 > >配置nginx虛擬主機別名及別名企業場景應用說明

配置nginx虛擬主機別名及別名企業場景應用說明

linux

nginx虛擬主機的別名配置

1 虛擬主機別名介紹及配置

所謂虛擬主機別名,就是為了虛擬主機設置除了主域名以外的一個或多個域名名字,這樣能實現用戶訪問的多個域名對應同一個虛擬主機網站的功能。

以www.etiantian.org域名的虛擬主機為例,為其增加一個別名etiantian.org,使得訪問

[[email protected] bbs]# curl -I 51cto.com
HTTP/1.1 301 Moved Permanently
Date: Sun, 20 Aug 2017 05:47:23 GMT
Content-Type: text/html
Connection: keep-alive
Location: http://www.51cto.com/
Load-Balancing: web03
Load-Balancing: web03
Load-Balancing: web03
[[email protected]
/* */ bbs]# curl -I baidu.com HTTP/1.1 200 OK Date: Sun, 20 Aug 2017 05:48:07 GMT Server: Apache Last-Modified: Tue, 12 Jan 2010 13:48:00 GMT ETag: "51-47cf7e6ee8400" Accept-Ranges: bytes Content-Length: 81 Cache-Control: max-age=86400 Expires: Mon, 21 Aug 2017 05:48:07 GMT Connection: Keep-Alive Content-Type: text/html

2 新增一個etiantian.org的別名,只需要在www.conf的配置文件中server_name後面空格添加一個etiantian.org域名即可

[[email protected] extra]# pwd
/application/nginx/conf/extra
[[email protected] extra]# vim www.conf 
    server {
        listen       80;
        server_name  www.etiantian.org etiantian.org;
        location / {
            root   html/www;
            index  index.html index.htm;
        }
    }

然後平滑重啟

[[email protected] extra]# ../../sbin/nginx -s reload

在管理機m01上面驗證

管理機新增一條etiantian.org的dns解析編輯/etc/hosts文件,新增如下解析

172.16.1.8      web01 www.etiantian.org bbs.etiantian.org blog.etiantian.org etiantian.org

在管理機上面curl以下etiantian.org即可,說明新增虛擬主機別名成功。

[[email protected] ~]# curl etiantian.org   
www
[[email protected] ~]# curl www.etiantian.org
www


虛擬主機別名生產使用場景案例

1)多數企業網站都希望訪問www.etiantian.org和etiantian.org所瀏覽的是同一個頁面,若有這類需求,就可以讓etiantian.org以別名的方式出現,這時兩個域名都要解析到服務器的IP地址。

2)在老男孩的生產環境中曾經還利用過別名來監控集群下面的RS的URL是否正常。如:

server_name  www1.tiantian.org www2.etiantian.org;

可以在監控服務器裏配置hosts來監控RS www1.etiantian.org、www2.etiantian.org等地址是否正常,進而判斷每一臺機器的www.etiantian.org是否正常。如不適用別名則很難通過域名URL的方式檢測判斷節點下面的機器是否正常(因為這些集群節點的域名是同一個)


本文出自 “sandshell” 博客,請務必保留此出處http://sandshell.blog.51cto.com/9055959/1957812

配置nginx虛擬主機別名及別名企業場景應用說明