<转>nginx实现永久(301)/临时(302)跳转的方法
先科普下:
301永久跳转,当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息中的状态码的一种,表示本网页永久性转移到另一个地址。
302临时跳转,也是状态码的一种,意义是暂时转向到另外一个网址。
二者的区别主要是,一句话,302容易被搜索引擎视为spam,301则不会。
nginx官方rewrite文档:传送门
nginx与apache规则区别不大,本代码实现XXX.com跳转到www.XXX.com,以避免搜索引擎分散权重。
server {
server_name hugao8.com;
rewrite ^/(.*)$ http://www.hugao8.com$1 permanent;
}
添加到/usr/local/nginx/conf/nginx.conf
添加在conf配置文件内即可,一般我与伪静态的配置放在一起。代码中判断,非www.XXX.com的,就自动跳转到www.XXX.com,permanent代表301永久跳转,改为redirect则为302临时跳转。
如果301状态不生效的话:
需要去/usr/local/nginx/conf/vhost/目录下对应的conf文件里面添加
if ($host = ‘hugao8.com’ ) {
rewrite ^/(.*)$ http://www.hugao8.com/$1 permanent;
}
posted on 2016-02-25 16:15 hahahahahai12 阅读(2624) 评论(0) 收藏 举报
浙公网安备 33010602011771号