【发布时间】:2015-01-17 00:09:42
【问题描述】:
我有以下配置文件。
server {
listen 80;
server_name web.example.com;
access_log /var/www/example/shared/log/web.access.log;
error_log /var/www/example/shared/log/web.error.log debug;
rewrite ^/(.*)$ http://www.example.net$request_uri; permanent;
}
当我请求 curl -Ii -H "Host: example.com" http://example.com 时,上述重写规则有效。 (ARGH)..
server_name 明确表示“web.example.com”
2014/11/18 22:49:20 [notice] 30694#0: 1868 "^/(.)$" 匹配 "/",客户端:1.2.3.4,服务器:web .example.com,请求:“HEAD / HTTP/1.1”,主机:“example.com” 2014/11/18 22:49:20 [通知] 30694#0: *1868 重写重定向:“http://www.example.net/”,客户端:1.2.3.4,服务器:web.example.com,请求:“HEAD / HTTP/1.1 ", 主机: "example.com"
此处不存在其他服务器 { } 配置。 Xavier(下)指出我已将 default_server 设置为 listen: 443;但不适合听:80。(啊)
【问题讨论】: