托pipe具有IP地址灵活性的自定义域

我正在build立一个小型的服务,用户将被分配一个子域名,如:

myusername.myservice.com anotheruser.myservice.com 

我知道我可以设置通配符虚拟主机,并使用一些configuration正则expression式,像这样提供文件:

 myusername.myservice.com ===> /var/www/myusername anotherusername.myservice.com ===> /var/www/anotherusername 

问题是我想允许用户将自己的域名别名到他们的服务。

我明白,对于Web服务器,一旦用户通过我的Web界面添加域,我可以很容易地为Nginx中的域创build一个虚拟主机,然后刷新Web服务器。

问题是,我宁愿不让用户添加我的networking服务器IP地址的Alogging,因为我更愿意保持灵活性(当我们将基础架构升级到更复杂的规模时)。

达到这个目标的最好方法是什么?

正如我在上面的评论中提到的,如果您不使用SSL,这非常简单,只需要您的客户端设置CNAMElogging对您的域名,它是一个logging。 所以你最终得到这个:

 WWW.MYDOMAIN.COM | CNAME --> YOURDOMAIN.COM | A --> 123.123.123.123 

如果您正在运行SSL,有几种不同的方式来处理这个问题。 你不能使用上面的解决scheme,因为它会导致大多数浏览器的证书错误。 相反,我通常最终使用上述相同的解决scheme,但不是直接从IP和域名提供内容,而是提供redirect页面/脚本,强制用户自动获得SSL URL。

最终的结果是,用户可以使用自己的自定义域名,但redirect用户后,最终返回的URL是您的域名。

就像我说的,有很多其他方法可以做到这一点,但这是我所喜欢的。