我有www
重写或返回的设置。
1
server {
listen 80;
server_name example.com;
return 301 https://www.example.com$request_uri;
}
2
server {
listen 80;
server_name example.com;
return 301 https://www.$host$request_uri;
}
这两件事是否相等?
它似乎运作良好,但我无法保证。
答案 0 :(得分:1)
这取决于哪个server
块是端口80的默认服务器。
如果此server
块也是端口80的隐式默认服务器,则可能需要处理example.com
以外的服务器名称的请求,在这种情况下值$host
的{{1}}不等于$server_name
的值。有关详情,请参阅this document。
您可以使用$server_name
代替$host
。有关详细信息,请参阅this document。