我很困惑,这个额外的服务器块会将任何子域名重定向到吗https://example.com
?
server {
server_name www.example.com
return 301 https://example.com$request_uri;
}
据我所知,这样做是不好的做法
if ($host ~* ^www\.) {
return 301 https://example.com$request_uri;
}
但是,至少在这种情况下,我确信只有存在 WWW 才会重写。
答案1
该server_name
指令匹配Host
请求标头。通过指定“www.example.com”,该服务器块仅适用于主机标头与该域名精确匹配的请求。
查看 nginx文档更多细节。