我想让nginx作为一个ssl代理,但对于主机: “ssl.example.com”
同时我想让nginx为主机“ssl-check.example.com”服务“nginx is ok”网站(这只是个例子,请不要在这里提供任何监控工具)
为其他主机指向我的IP我想服务404或任何其他。
– 我不在乎证书不匹配 – 所以SNI不是我想要的。
– 我不想使用描述为陷阱的解决scheme,并使用类似的东西
if ($host != $server_name) { root /var/www/errors/404
所有这些在单个IP上。
我有工作的SSL
server {
与server_name ssl.example.com – 工作,我想要的。
另一个ssl
server {
用server_name ssl_check.example.com – 显示“nginx是好的”
和最后一个服务器(也是SSL)没有server_name(或与“_”作为名称)应该服务404,但它不工作…
解决了
我的configuration使用该解决scheme看起来(和工程),如:
如果这个configuration可以以任何方式危险 – 不要犹豫,让我感到羞耻。 Thans
您可以使用listen指令的default_server选项指定默认的虚拟主机。 如果你不设置这个nginx将select第一个匹配listen指令的server块。
server { listen 443 ssl default_server; root /var/www/errors/404; }