目前我使用nginx作为我的网络服务器。前段时间,我发现了服务器名称指示(SNI),这是非常有用的,因为我有几个域(包括所有子域)从我的服务器运行。有没有办法禁止https连接到某些没有认证的子域,而使用SNI
因此我退出了,我在我的主域名和我的服务器上的几个子域名上放了一个SSL证书。伟大的工作,没问题:D
(我不只是使用通配符证书的原因是因为我使用http://www.startssl.com/它为我提供免费的SSL证书,但通配符我将不得不支付,我的服务器不是那么重要,它只是一个爱好项目)
因此,对于这个问题: 如果有人浏览到一个不存在的(子)域或没有安装证书的域,他们当然会在浏览器中看到一个很大的警告,因为nginx提供了默认的证书,当然这个证书不符合那个不存在的域名。 我想知道,是否有可能告诉nginx,如果sni系统被要求提供一个非现存的域名,只是终止连接或者做一些事情,而不是名称不匹配的警告,会出现其他一些警告在浏览器说网站不存在(如果甚至这样的系统确实存在...)
我知道一个解决方案:拿走wildcard-dns-record,因此不存在将不存在,但那对存在的不起作用,但对https不起作用。此外,我不能轻易地添加一个新的子域名,也必须编辑它的dns设置。 (我知道,我很懒,但哪个书呆子不是:P)
哦,如果这样的事情是不可能的,我只能忍受它现在的样子,不是那么大的一笔交易,但它会让我的服务器更“冷”xd(即时通讯抱歉,我只是一个随机的技术爱好者)。
我建议在ServerFault上询问这个,但是删除任何提及的爱好者,因为它意味着专业上下文。 – Bruno 2015-02-23 19:56:47