Nginx下域名301永久重定向设置方法


在国家的宏观掌控下,我某个网站不小心出了国,其实也是无奈之举,和谐社会,大家都尽一份力吧。国外WIN的主机都是很贵的,Linux因为系统免费,所以相对于WIN来说便宜很多。虽说之前也没有用过Linux,但是还是硬着头皮买了个Linux的VPS(独立服务器还是买不起的,也没必要),于是学着安装Lnmp一键安装包,一切都还算顺利。这几天要换网址,基于SEO思想,准备搞个301永久重定向,所以在网站找了些资料,也还算顺利,没费什么功夫就搞定了。

 

说说方法吧,具体的Lnmp安装就不说了,我也不精。301重定向主要是修改nginx的核心变量,目标网站的conf文件server函数。

比如现在需要把linuxboy.net重定向到www.linuxboy.net,修改代码如下:

server {
server_name www.linuxboy.net linuxboy.net;
if ($host != ‘www.linuxboy.net’ ) {
rewrite ^/(.*)$ http://www.linuxboy.net/$1 permanent;
proxy_set_header Host “www.linuxboy.net”;
}

}

把域名换成你的,就可以了。需要注意的地方有两个:

1.permanent这个是关键,表示永久定向;

2.下面这段代码的作用:

proxy_set_header Host “www.linuxboy.net”;

这段代码可以加可以不加,但是效果是不一样的。如果没加不管输入linuxboy.net还是linuxboy.net/sanwen/suibi/,都会跳转到www.2cto.com;加了之后输入linuxboy.net转到www.linuxboy.net,输入linuxboy.net/sanwen/suibi/则转到www.linuxboy.net/sanwen/suibi/。大家可以根据自己的需求选择加还是不加这段代码。

后记:经过测试,加了代码proxy_set_header Host “www.linuxboy.net”;测试会出现错误,不加这段内页一样可以跳转到内页。特此声明!

注:由于编辑器原因,如果复制代码过程中出现中文符号如“,请统统改成英文符号”,不然修改不成功。
 

 

相关内容

    暂无相关文章