我想在独立的IP地址(由于SNI)托pipe我的网站。 我使用AWS EC2上托pipe的nginx docker镜像。 当我把它设置为:
server { listen <MY_IP>:80; server_name <MY_HOST>.com; return 301 https://google.com; }
即使域DNS A条目设置为<MY_IP>
,也不会解决此问题。 它始终解决我的默认设置,其他IP地址托pipe:
server { listen 80 default_server; server_name _; ... }
是否有可能混合IP和基于名称的主机? 有没有可能以某种方式debuggingnginx解决什么,为什么?
如果您从第一个服务器子句中的listen指令中删除该部分,则nginx会将包含.com的Host:头的请求与第一个服务器configuration匹配,并将其他Host:头的请求与第二个默认服务器configuration进行请求。
此外,SNI适用于HTTPS / TLS服务,不适用于HTTP服务,它特别允许来自同一IP的多个主机。