网站301重定向和404错误页是非做不可的项目

 微西风博客   2015-12-09 17:21   812 人阅读  14 条评论

  网站301重定向和404错误页是非做不可的项目,301重定向是指将一个域名永久性转移到被指向的域名。

做301重定向有什么好处?为什么要做301重定向?

1.301重定向可以将多个废弃的域名转移到一个主域名上。

2.网站更换域名后301可将原域名网站收录、权重、排名等转移至被指向的新域名。

3.一般情况下,我们的服务器解析了“@”“WWW”这两个域名。对于搜索引擎来说这可是两个一模一样互相抄袭的网站,是你抄袭了你还是谁抄袭了谁?

0.而我们要做的就是将weixifeng.com301重定向到www.weixifeng.com,这样www.weixifeng.com这个二级域名就是本站唯一的被访问域名。  

4.301重定向设置完成后在http://tool.chinaz.com/pagestatus/站长工具下检测一下返回码,如下图就算重定向成功。

查询地址:weixifeng.com
服务器IP:113.17.175.44
返回状态码:301
网页返回HEAD信息如下
Server: nginx
Date: Wed, 09 Dec 2015 09:58:24 GMT
Content-Type: text/html; charset=iso-8859-1
Transfer-Encoding: chunked
Connection: keep-alive
X-Powered-By-360WZB: wangzhan.360.cn
Location: http://www.weixifeng.com
Vary: Accept-Encoding

为什么要设置404错误页?

  一个网站多多少少会有不少死链,一旦访客访问了这些死链接如果没有404的引导,那么肯定会直接关闭你的网站而流失不可预算的流量。做404错误页的目的就是告诉访客你所访问的链接已不存在,同时引导访客继续浏览网站内的其他内容,而不是关闭你的网站窗口。最后切记,404错误页切勿设置将此页面跳转到首页。

301重定向的设置方法

DNS服务器

一般DNS服务器都提供URL转发功能,而且大部分用的就是301转发,如果虚拟主机服务器不支持301跳转、或者无法用程序实现时。可以使用域名服务器实现转发,DNS实现的301转发功能简单,只能实现域名、子目录等跳转,另外特别注意有的DNS服务器转发不一定是301,所以要检测一下。

WEB服务器

apache需要加载rewrite模块,然后在主机配置中或者在网站的.htaccess文件中写rewrite规则进行URL跳转设置。IIS同样可以加载rewrite模块,然后在httpd.ini文件中写rewrite规则。如果能够控制IIS服务器,可以选中要跳转的域名或目录,图形方式设置资源重定向。

Options +FollowSymLinks

RewriteEngine on

rewritecond %{http_host} ^mmmstar.com [nc]

rewriterule ^(.*)$ http://www.mmmstar.com/$1 [r=301,nc]

或者

RewriteEngine On

RewriteCond %{HTTP_HOST} !^mmmstar.com$ [NC]

RewriteRule ^(.*)$ http://www.mmmstar.com/$1 [L,R=301]

表示整站所有的以带www的域名www.nmmmstar.com为地址的网页都会301转向到不带www的域名mmmstar.com不仅是首页,子目录/网页也可以)。

如果是其他域名要重定向到 mmmstar.com 这个新域名,则在.htaccess文件中加入如下重定向代码:

Options +FollowSymLinks

RewriteEngine on

RewriteRule ^(.*)$ http://www.mmmstar.com/$1 [L,R=301]

动态网页程序PHP的301跳转代码:

<?php

Header("HTTP/1.1 301 Moved Permanently");

Header("Location: http://www.xx.com");

?> 

  网站改版后导致URL方式改变了,如老页面url是www.a.com/page.html,新页面url则是www.a.com/?p=3,老页面已不能访问了,新页面又没被收录,如果两个页面都保留的话,或许新页面就永远不会被收录了,因为内容重复了。这个时候就可以通过301跳转把老页面跳转到新的页面。

  两个域名绑定了同一个空间,两个域名都被搜索引擎收录了,而只想用其中一个域名。不然会内容复制的。可以用301跳转。

  在购买域名时,域名本身是不带有www的,由于在以前网站方都会增加一个"www"的子域名来帮助客户以更多的路径访问网站,客户会养成在网站前添加www来访问网站的习惯,所以如果没有做www.*.com的解析的话客户输入www.*.com便不能访问,基于此,一些域名提供商会自动帮购买者做了这个"www"的解析,这样带"www"的和不带两个域名同时可以访问一个同样的内容。但是这样的话,会分散某个域名的流量与PR值,最好的解决方案是将所有访问用301跳转定向到某个域名下。

URL转发

  url转发有两种方式,隐藏转发和(url转发后浏览器地址栏输入的网址不变)不隐藏转发(也叫显性转发:url转发后地址栏显示的地址为转发后的网址)。不管是隐藏转发还是不隐藏转发,根据不同的域名注册服务商,可能会返回不同的http header。有的会使服务器返回302状态码给搜索引擎,而不是301 http 状态码。有的是通过给浏览器窗口套用一个框架iframe的方式来实现隐藏转发,有的则是使用Javascript或Meta Refresh来实现不隐藏方式的url转发,不一定是真正用到301重定向,所以,应该尽可能少用url转发功能。

本文地址:http://www.weixifeng.com/post/265.html
版权声明:本文为原创文章,版权归 微西风博客 所有,欢迎分享本文,转载请保留出处!

发表评论


表情

评论列表

  1. boke112导航
    boke112导航  @回复

    这两个好像基本上都是要设置的,不过也就是一次性设置,很少关注

  2. 小炎博客
    小炎博客  @回复

    真心觉得你的写作水平不错呢,天天来你博客看你写的文章

    • 微西风博客
      微西风博客 2015-12-13 16:09:29  回复

      @小炎博客啥水平啊!都是随心所欲,瞎写的。告诉你我的思路,先想三个字,这三个字是你想写的内容,然后三个字概况成三十个字的文章标题,再然后用三百个字把文章标题叙述清楚就可以了,写着玩的,还是要写别人感兴趣的。

  3. 胡思宇博客
    胡思宇博客  @回复

    [F]liuhan[/F]

  4. 微童年
    微童年  @回复

    这基本的东西,都是要完善的,算是基脚吧

  5. 访客
    访客  @回复

    为什么我用NET IIS7.5无法设置301呢 www.aaaoan.com

  6. 吃过没
    吃过没  @回复

    404可以设置称公益性的

  7. 天天向上
    天天向上  @回复

    学习!

  8. 小周博客
    小周博客  @回复

    学习了,欢迎回访!

  9. 爱不离影视
    爱不离影视  @回复

    确实说的是啊!

  10. 2016贺岁大片
    2016贺岁大片  @回复

    这个还看个人的意愿吧