nginx如何设置IP直接访问自动跳转到域名
2026:不要把任意 IP/Host 请求 301 到站点域名
直接访问 IP 的 HTTPS 请求在 TLS 握手阶段就可能因没有匹配证书失败,因此“443 默认 server 重定向到域名”不能保证用户能看到跳转。更安全的默认 server 通常是拒绝未知 Host(例如返回 444/400),而不是把任意 Host header 或 IP 请求反射到正式站点,这会扩大 Host-header 风险。
为正式域名单独设置明确的 HTTP→HTTPS 与 www/non-www canonical 重定向;在变更前用 sudo nginx -t,然后 sudo systemctl reload nginx。测试已知域名的 HTTP/HTTPS、正确 Host、错误 Host 和 IP 请求,并检查最终 canonical、HSTS 及证书是否符合预期。