两种实现方法,第一种方法是判断nginx核心变量host(老版本是http_host):
server {
server_name www.test.com test.com ;
if ($host != 'www.test.com' ) {
rewrite ^/(.*)$ http://www.test.com/$1 permanent;
}
...
}
第二种方法:
server {
server_name test.com;
rewrite ^/(.*) http://www.test.com/$1 permanent;
}
我用的是第一种方法,这两种方法中, permanent是关键,详细说明见nginx重定向规则说明。
last – 基本上都用这个Flag。
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302
permanent – 返回永久重定向的HTTP状态301
转