首页  >  问答  >  正文

nginx - 云服务如何提供定制域名服务,把这个定制域名指向站下的二级域名

我们现在提供云服务,客户有一个专属的二级域名,访问该域名下面是一些定制静态和动态资源,现在我要提供可以把用户自己的域名指向该二级域名,实现的效果和GitPages一样,用户添加他的CNNAME,他再把自己的域名指向我的IP(客户的是顶级域名),我的前端有个Nginx可以来做这个解析

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

全部回复(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
  • 取消回复