Discuz!官方免费开源建站系统

 找回密码
 立即注册
搜索

301重定向是什么意思?(大伟随写高手再笑了)

[复制链接]
530761333 发表于 2010-9-19 21:24:45 | 显示全部楼层 |阅读模式
我还在学习中请高手一看或一笑而过或留下宝贵的经验和指教一,二

1. 什么是301转向
301转向(或叫301重定向,301跳转)是当用户或搜索引擎向网站服务器发出浏览请求时,服务器返回的HTTP数据流中头信息(header)中的状态码的一种,表示本网页永久性转移到另一个地址。

其它常见的状态码还包括,200表示一切正常,404网页找不到,302暂时转向,等等。

使用 301 重定向将您原来网站上的所有网页永久重定向至新网站。 这可以告诉搜索引擎和用户您的网站已永久迁移。是符合搜索引擎友好的,目前最安全的网址域名更换。

请不要将原来网站的所有网页都定向到新网址的主页。虽然这样可以避免 404 错误,但并非良好的用户体验。建议将旧网址的网页对应到新网址同目录同名称的网页,网页对网页的重定向将有助于保持您的网站在 Google 上的排名,同时还能提供一种一致且直观的用户体验。

如果您新旧网站的网页无法一一对应,可尝试确保您原来网站上的每一个网页至少会重定向至一个具有相似内容的新网页。

301的另个重要用处是网址规范化。即选择你希望的唯一的首页网址。

2. 301转向在seo中的作用
网址转向方法主要包括:301转向,302转向,JavaScript转向,PHP/ASP/CGI转向,META REFRESH网页META刷新,等。302转向可能会有URL规范化问题。其它方法都是常用的作弊手法,当然不是说不可以正当地用,方法本身没有错,但被作弊者用多了,搜索引擎对这些可疑的转向都很敏感。何必冒险呢。

当网页A用301重定向转到网页B时,搜索引擎可以肯定网页A永久的改变位置,或者说实际上不存在了,搜索引擎就会把网页B当作唯一有效目标。好处是,第一,没有网址规范化问题,第二,也很重要的,网页A的PR网页级别会传到网页B。
很多时候其它网站会链接到
http://shijiexuexi.com http://www.shijiexuexi.com/index.html
而不是你希望的
http://www.shijiexuexi.com
这样链接的PR也会传递到所有URL,如果你用301转向把前三个URL转到
http://www.shijiexuexi.com
PR也就集中在网页http://www.shijiexuexi.com了。

3. 如何实现301转向
a. 用.htaccess实现301转向
文件及目录转向
比如把/old.htm转到http://www.shijiexuexi.com/new.htm,可以用这个指令:
redirect 301 /old.htm http://www.shijiexuexi.com/new.htm

redirect permanent /old.htm http://www.shijiexuexi.com/new.htm
redirect也可以实现目录的转向,例如要将http://www.shijiexuexi.com/bbs 转向到 http://bbs.shijiexuexi.com 可以用: redirect 301 /bbs http://bbs.shijiexuexi.com

b. 规范www
全部统一到 www.shijiexuexi.com (带www)
RewriteEngine on
RewriteCond %{HTTP_HOST} ^zzbaike\.com$ [NC]
RewriteRule ^(.*)$ http://www.shijiexuexi.com/$1 [L,R=301]
使用时将上面的zzbaike.com 替换为你使用的域名即可
全部统一到 zzbaike.com (不带www,目前的新趋势)
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www\.zzbaike\.com$ [NC]
RewriteRule ^(.*)$ http://shijiexuexi.com/$1 [L,R=301]
使用时将上面的zzbaike.com 替换为你使用的域名即可

c. Rewrite实现301转向
RewriteEngine On
RewriteRule ^(.*)$ http://www.shijiexuexi.com/ [R=301,L]
这个是都转向到新域名的首页
如果要做目录及文件转向用:
RewriteEngine On
RewriteRule ^(.*)$ http://www.shijiexuexi.com/$1 [R=301,L]
上面的代码就可以将 http://www.shijiexuexi.com/bbs/forum-51-1.html 这样类型的url转向到 http://bbs.shijiexuexi.com/forum-51-1.html

d. PHP实现301重定向
在 index.php 的最上面加入以下几行: <?php
<?php
header("HTTP/1.1 301 Moved Permanently");
header("Location: http://www.shijiexuexi.com/");
exit();
?>
用PHP进行301重定向的坏处是无法进行目录的重定向

e. ASP实现301重定向
在 index.asp 或 default.asp 的最上面加入以下几行:
<%Response.Status="301 Moved Permanently" Response.AddHeader "Location","http://www.shijiexuexi.com/" Response.End %>
静态网页实现301重定向
HTML无法做[htaccess]的301转向。在HTML里只能做JS或META REFRESH,但不是301转向。HTML一被读取,就已经返回200 OK状态码了。不过可以在主机商提供的工具里实现,登陆你的主机空间,进入cpanel(操作面板),找到“redirect”功能选项,填写将本网址指向其他网址。

举例:
如果是首页指向首页 http://www.*****.com 指向 http://www.*******.com
如果是网站内某一页指向首页 http://www.*****.com/*****.htm 指向 http://www.*****.com
指向相对应的新域名的同一目录下的文件名 http://www.*****.com/*****.htm 指向 http://www.*****.com/****.htm
把旧站的所有网页都指向首页 http://www.*****.com* 指向 http://www.*****.com
把旧站的所有网页都指向新站相同目录相同名称的网页(即一一对应) http://www.*****.com/* 指向 http://www.****.com/*
此种方法适用于动态网站和静态网站。

4. 301重定向的后续工作
后续工作,登陆google网站管理,重新提交sitemap,头几次google可能因为发现访问旧站的的sitemap却进入另一个站sitemap,属于域名错误,提示网址不可用。报错。这个正常,再提交几次google就会发现301转向了,错误就会取消。在网站管理添加新站,提交新站的sitemap。选择搜索引擎按照有www或者无www来索引。(建议含www,同时无www也能访问)

过会去看看旧站的访问记录,就会发现 无论是访客,还是搜索引擎,进入网页都显示的是 http code 301。
回复

使用道具 举报

p1985 发表于 2010-9-21 09:03:02 | 显示全部楼层
(EM:131:)(EM:131:)(EM:131:)
回复

使用道具 举报

 楼主| 530761333 发表于 2010-9-21 13:11:14 | 显示全部楼层
回复

使用道具 举报

zuokepeng 发表于 2010-9-24 14:47:48 | 显示全部楼层
想学都学不会。。囧
-----------------------------
谁说新手不能弄签名档了。这不就是么
V6银饰 :www.v6-fashion.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|Discuz! 官方站 ( 皖ICP备16010102号 )star

GMT+8, 2025-9-12 14:19 , Processed in 0.120733 second(s), 14 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表