Nginx服务器中实现301重定向代码
进行了301重定向,把www.domain.com和 domain.com合并,并把之前的域名也一并合并. 有两种实现方法:
第一种方法:
判断Nginx核心变量host(老版本是http_host):
server { server_name www.domain.com domain.com ; if ($host != 'www.domain.com' ) { rewrite ^/(.*)$ http://www.domain.com/$1 permanent; } ... }
第二种方法:
server { server_name domain.com; rewrite ^/(.*)$ http://www.domain.com/$1 permanent; }
测试了第一种方法ok,这两种方法中, permanent是关键,详细说明见nginx重定向规则说明。
last – 基本上都用这个Flag。
break – 中止Rewirte,不在继续匹配
redirect – 返回临时重定向的HTTP状态302
permanent – 返回永久重定向的HTTP状态301