前段时间有写过一篇 老域名301跳转并统计所带来的流量的小技巧 这次我们再来深入探讨一下由老域名跳转过来而本站不存在的URL所带来的流量的转化方法,这句话有点绕口,简单的来解释一下很容易理解,我们注册老域名无外乎就是看重该域名之前有过的跟自己网站相关行业的做站记录,而且也在很多不同的网址目录搜索引擎等留下了大量有一定权重的page,当这些购买过来的老域名做了301跳转到我们自己的主站,一段时间以后,你会发现,从老域名那里会过来不少流量,如下图:
上图红框内的链接便是从老域名跳转过来的本站不存在的页面产生的404页面。
但由此也产生了不少问题,因为老域名的权重page的url跟我们自己网站的url肯定不一样,因此类似跳转过来的url都会自动生成了一个如下的404页面,当然只要把这个404页面设计得漂亮一点,还是可能留住一些类似跳转过来的访客的,不过深入一点考虑,要是可以把这类型url构造出来,让它能够301跳转到我们自己网站对应的url上,岂不是更美妙了。
找不到页面 — 东方设计工作室-Eastern Design Studio那么这个跳转是否可能?回答当然是肯定加 Absolutely 加 Very Sure ,嘿嘿,不小心拽了两句洋文,Sorry,类似的构造URL并且301跳转方法非常多,我们今天就用简单而且有效的方法,通过加入跳转代码到.htaccess
里边轻松实现这种跳转,代码范例如下:
# 301 Redirects
Redirect 301 /Eriacta.html https://www.eastdesign.net/wordpress-web-development
Redirect 301 /Soma.html https://www.eastdesign.net/wordpress-web-development
Redirect 301 /Lasix.html https://www.eastdesign.net/wordpress-web-development
Redirect 301 /drupal https://www.eastdesign.net/wordpress-web-development
Redirect 301 /fatcow-hosting-coupon https://www.eastdesign.net/billing/?gid=2
Redirect 301 /ipage-hosting-coupon https://www.eastdesign.net/billing/?gid=2
上传.htaccess
以后,让我们来测试一下是否生效了,如下图所示:
至此,此教程目的顺利达成,搞定收工,喝杯咖啡去 🙂
404页面是一个网站非常重要的页面,尤其对于曾经做过域名更换和注册了一些老域名做301跳转的网站更为重要,我们都知道网站做过改版或者更换过CMS,必然无法保证所有页面的URL能完全和之前的页面URL100%匹配,这样老域名被收录的某些页面一旦有访客点击进来的时候必然形成一个404页面,如果这个404页面显示得乱七八糟或者直接就是空白,势必会丢失很多潜在的访客,也失去了很多潜在的流量。
本篇教程不仅仅会教你如何将404页面跳转到网站首页,也会告诉你如何跳转到任何一个指定的页面,比如可能是网站首页,可能是联系我们的页面也可能是任何一个自定义的页面。
这样,如果你的某些被搜索引擎仍然收录的网页被删除以后,访客点击进来产生的404页面将会给你引导流量到网站首页或者指定的页面,这种方法尤其对于有过购买相关老域名,然后做301跳转到当前域名的情况非常有效,具体如何做老域名跳转及统计由老域名带来的流量请参考本站前几天写的教程:老域名301跳转并统计所带来的流量的小技巧,试想,老域名注册下来以后,这个老域名之前有过做站经历,很可能会在搜索引擎上留下大量的收录页面,当然这些页面的URL跳转到你新站以后肯定都是404页面,那么如果这个老域名假设足够的好,每天就会带来大量的404页面,如果404页面做了这个跳转,试想想,你的网站首页将会新增多少流量,而且如果这个老域名跟你网站足够相关的话,由此产生潜在客户也是很有可能的。
第一种方式
打开WordPress网站模版里边的404.php,如果该404.php不存在,那么就新建一个文件叫做404.php,然后拷贝以下代码进这个页面:
<?php header("Status: 301 Moved Permanently"); header("Location: ".get_bloginfo('url')."#301-redirect-from-404-page"); ?>
(2013年1月22日更新)不好意思这里第一种方式里边的 header(“Status: 301 Moved Permanently”); 并不会实现真正的301跳转,而是返回了302跳转,现更正如下:
<?php header("HTTP/1.1 301 Moved Permanently"); header("Location: ".get_bloginfo('url')."#301-redirect-from-404-page"); ?>
上边代码中的#301-redirect-from-404-page,主要用来通过网站统计系统统计哪些流量是来自404页面跳转过来的,本站之前的一篇教程有做过详细的介绍,请移步:老域名301跳转并统计所带来的流量的小技巧
第二种方式
拷贝以下代码到404.php页面里边,可以跳转404页面到任意你设定的页面,替换其中的xxx为你的域名和页面URL即可:
<?php header("Status: 301 Moved Permanently"); header("Location: "); ?>
(2013年1月22日更新)不好意思这里第一种方式里边的 header(“Status: 301 Moved Permanently”); 并不会实现真正的301跳转,而是返回了302跳转,现更正如下:
<?php header("HTTP/1.1 301 Moved Permanently"); header("Location: "); ?>
为了提升更好的用户体验,特意重新自定义了nginx的默认404提示页面,今后访问任何不存在的或者已经被移除的页面,将统一重定向到这个网址: 特此公告。
东方设计工作室团队
2011年5月6日