首頁  >  問答  >  主體

nginx - 雲端服務如何提供客製化網域服務,把這個客製化網域名稱指向站下的二級域名

我們現在提供雲端服務,客戶有一個專屬的二級域名,訪問該域名下面是一些定制靜態和動態資源,現在我要提供可以把用戶自己的域名指向該二級域名,實現的效果和GitPages一樣,用戶添加他的CNNAME,他再把自己的網域指向我的IP(客戶的是頂級網域),我的前端有個Nginx可以來做這個解析

我现在知道的是,如果我动态的向Nginx的conf文件里添加server,似乎是可以处理这个情况的
请问有经验的朋友给个提示,如果我建立一个Nginx的配置目录,动态的这个目录下添加conf文件,并include这个目录下的所有配置文件,每个文件里写一个server,这样可行吗?
我测试过添加目录,写入配置文件添加server是可以的,但是必须reload Nginx
请问有什么办法,不用手动reload Nginx
给我你的怀抱给我你的怀抱2688 天前598

全部回覆(1)我來回復

  • 巴扎黑

    巴扎黑2017-05-16 17:22:23

    1) 首先,你需要將每個客戶的靜態檔案放在不同的目錄中,例如 /data/www/site/foo /data/www/site/bar
    2) 到你的 DNS 服务商处配置一个范域名,例如 *.statuspage.cn (部分 DNS 服務商可能不支持,這裡推薦你使用免費的 DNSPod)
    3) 配置 Nginx 如下

    # 部分无关配置已忽略
    server {
      server_name  ~^(?<subdomain>.+)\.statuspage.cn;
      root         /data/www/site/$subdomain;
    }

    4) 現在你可以透過 foo.statuspage.cnbar.statuspage.cn 愉快的訪問了

    回覆
    0
  • 取消回覆