前言

网站域名一般都有两个,即带www的和不带www的。当用户使用不带www的域名时,也可以正常访问你的网站。但是这样做也有不好的一面,那就是站点主域名的PR值分散到其他几个URL上了。因为在搜索引擎看来,带www和不带www的URL是2个完全不同的URL,当它们指向同一个网站时,会让搜索引擎不懂应该选择哪一个URL作为主要的域名,就会影响网站的排名,因为网站权重被分散了。那么这时候应该怎么做呢?这时候千万不要停止其中任何一个的解析,而是要使用301重定向把其他几个URL如example.com转到www.example.com时,相应的PR也就集中在主域名:www.example.com上了。

永久跳转和临时跳转

301永久跳转,当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息中的状态码的一种,表示本网页永久性转移到另一个地址。
302临时跳转,也是状态码的一种,意义是暂时转向到另外一个网址。
二者的区别主要是,302容易被搜索引擎视为垃圾,301则不会,而且会转移权重。permanent代表301永久跳转,改为redirect则为302临时跳转。

配置方法

server {
  listen 80;
  server_name example.com;
  return 301 http://www.example.com$request_uri;
}

server {
  listen 80;
  server_name www.example.com;
  index index.html index.js;
    ....
}

注意return 301 网址的时候一定要加http!,否则会出现多次重定向

重启动nginx

#重新启动nginx
nginx -s reload

然后在浏览器里输入网址进行测试看是否成功