May 9, 2008

成功更换永久链接

      一直很羡慕别人的类似 /2008/04/postname这样的永久链接格式, 可苦于自己先入为主的采用类似%category%/%postname%.html的样式, 所以一直未曾舍得更换。

      任何经常做SEO的人应该都知道, 更换一次的永久链接意味着什么, 那可能会让博客失去很多的IP和PV, 所以鉴于此种教训, 我一直没舍得更换这看着就让人向往的永久链接。

      不过经过努力, 我找到了不丢失曾经的%category%/%postname%.html永久链接的方法, 那就是采用SEO中的301重定向, 可要重定向也得有方法才可以, 经过一番查找, 最后终于得到了wordpress的永久链接规则的rewrite_rule是如何匹配的, 拷贝and粘贴合并, 最后就可以使得所有的链接样式永不丢失。

      不信但看我以前的链接样式, 如果你有RSS阅读器, 不妨找一篇老文章, 然后直接点击, 看是否完美无缺的链接到了原始文章而不是连向404页面。

      不过更换过永久链接之后, google还是刷走了我全部的搜索记录, 只剩下了10条, 并在网站管理员工具中告诉我301的重定向太多了, 我想这可能需要一段时间恢复元气了, 慢慢等吧。

  您喜欢本文吗?即刻订阅"偶爱偶家",精彩文章不再错过!现在就给我们留个话吗?

 

« 网络还有没有净土 Yupoo收费的破事儿 »
47 responses to "成功更换永久链接"
ayanamist said:
2008年05月09日

约有 3,770 项符合 blog.2i2j.com 的查询结果,以下是第 1 - 10 项 (搜索用时 0.17 秒)
还好吧,现在不是太坏,不过都是老式的,可能要过几天才能体现

枫叶 reply:
2008年05月09日

@ayanamist, 哇咔咔, 偶看错了, ^_^

Estyle said:
2008年05月09日

俺不太懂SEO,只记得以前看过某高人的文章,其中有一点:
GG和其它主流搜索引擎的爬虫很智能了,如果你的URL中含有年月等日期信息,明摆着是告诉了爬虫哪些URL是过时的,对这些URL,爬虫下一次爬行就会是在更久以后(甚至不再二次爬行),爬行频率降了下来无疑是违背SEO初衷的。所以,不建议在URL中表示含日期的信息。
——不知道我记错了没,或者又是我的幻觉,无中生有的事情?
PS:俺也自己想过,仿佛真的有这种可能性。

枫叶 reply:
2008年05月09日

@Estyle, 这个应该不可能吧? 爬虫怎么会知道那是年月日呢? 万一我是其他意义的数字呢? 反正也不管了, 我就是比较喜欢这个样式而已, 管他SEO呢

Estyle reply:
2008年05月09日

呵呵,爬虫很聪明的,而且可能越来越聪明。
不过,你不在乎——其实我也不在乎,那就没有问题,哈哈!
俺只是和你分享一个不太确定的信息而已。

枫叶 reply:
2008年05月12日

@Estyle, 不管爬虫怎么聪明了, 反正我也不做SEO, 就是为了自己看着喜欢.

鬼仔 said:
2008年05月09日

我转换程序的时候永久链接变化更大,当初光写rewrite就花了我好长时间
我是直接从http://www.huaidan.org/blog/article.asp?id=1515转到http://huaidan.org/archives/1515.html这样,301了域名的www、主目录。。
这里有我当初转换的全过程
http://huaidan.org/archives/1879.html
我是直接写.htaccess的,都转了快半个月了,现在百度和google都没有转换完,百度那里没有识别到我去除的www,site一下都是http://www.huaidan.org/archives/1916.html这样的,google那里很多都还没转变过来,管理员工具则是直接告诉我很多404,汗。。我也懒得管了,让他自己再重新爬吧,这次转换弄的我PR直接从4到1,我记得原来有人说301可以不损失PR的,但是我这里不行,或许是我那里做错了。
google的blogsearch现在也都没有收到我最新的日志,虽然我都ping过了。

枫叶 reply:
2008年05月09日

@鬼仔, 怎么惨啊? 我的几次永久链接转换都还算可以, 一直没有太大的问题, 希望这次也可以安然渡过.

lxltop said:
2008年05月09日

为什么喜欢这种结构哦,其实我觉得以前的多不错的,只是带分类好像不少转向的插件都不能正常工作。
恩,这个就是瞎折腾,我才折腾完。

枫叶 reply:
2008年05月09日

@lxltop, 这个东西本来就是折腾吗, 不过我比较喜欢这样的样式, 原来采用category的样式, 原因是想多几个英语单词, 让人可以更多的搜索到, 现在想想其实没啥意思了.

lxltop reply:
2008年05月09日

原来是这个想法,我说你的分类咋个那么长,我也是用分类的,但是分类名称都很简单,我准备坚持现在这种结构了
有机会再写一个我就直接/postname/,哈哈

枫叶 reply:
2008年05月12日

@lxltop, 我直接postname的也301了, 你可以试试把地址中的年月去掉, 看看能不能301过来

大猫 said:
2008年05月09日

如果是301,不影响收录和排名,权重也是继承的
但似乎WP2.5开始如果用后台去转向,默认是302,302很危险,千万别用,可能被判为作弊,排名大跌,收录被删除等恶果
http://www.seoconsultants.com/tools/headers.asp
测试下老链接的跳转文件头

我前段时间做了下permalinks的更换,加了.cat后缀,嘿嘿
做了301,收录和排名也没变化依旧一千四左右

枫叶 reply:
2008年05月09日

@大猫, 谢谢你的指点, 我用live http headers这个插件查过了, 是301, 还是wordpress 2.3.3比较好啊.

lxltop reply:
2008年05月09日

2.5.1就修复了302的问题了

Allen said:
2008年05月09日

我最近也是更换了永久链接,但是不会写代码,是用Permalink Redirect这个插件的,随便把rss也转了,结果是管理员工具也说我301太多,另外Google reader把我的订阅量搞成1了···

鬼仔 reply:
2008年05月09日

在哪里看到“管理员工具也说我301太多”

Allen reply:
2008年05月09日

sitemap里面,
我们在测试您 Sitemap 中的示例网址时,发现某些网址中包含过多的重定向网址而使 Googlebot 无法访问。请修改Sitemap 中的重定向网址并用目标网址(重定向目标)替换。所有有效的网址仍然可以提交。
HTTP 错误: 301 永久移动

鬼仔 reply:
2008年05月10日

我的倒是没发现,但是我的很多301他都说无法找到。明明是OK的,我直接访问那些他说404的页面,也都是可以访问的。

枫叶 reply:
2008年05月12日

@allen, 我的也是这个提示.

MY-Hou said:
2008年05月09日

怪不知订阅里旧文也弹出来了

枫叶 reply:
2008年05月12日

@MY-Hou, 呵呵, 让你重新温故了一次, 不好意思.

Jinwen said:
2008年05月10日

我觉得原来的链接结构也没有问题啊,至少我还在用这样的结构。

枫叶 reply:
2008年05月12日

@Jinwen, 结构都是没有问题的, 对于SEO的效果我倒不是很清楚, 只不过我喜欢这样的结构而已, 所以就换到现在的结构了.

kaka said:
2008年05月10日

/%year%%monthnum%/%day%_%post_id%.html

这样得连接多好啊 呵呵

我的就是这样得 :D 简洁明了啊 hoho

枫叶 reply:
2008年05月12日

@kaka, 这样的结构也不错, 个人喜欢了.

大猫 said:
2008年05月10日

我是IE7~~

大猫 reply:
2008年05月10日

.. …可能和我什么插件冲突了吧…你这里可以的呃…

枫叶 reply:
2008年05月12日

@大猫, 可能吧, 但照理说我把插件已经写的很谨慎了, 应该不会跟别的插件冲突. 什么时候你我都在线的时候, 启用一下, 我再看看吧.

大猫 reply:
2008年05月12日

恩,我一般都在的,gt用的否?
damao.org#gmail.com
或者其他IM也行,写个EMAIL给我告诉我是哪个IM我打开
QQ MSN GT EMAIL都是上面那个email地址~

Dickey said:
2008年05月12日

很好奇地请问一下,为什么你喜欢 /2008/04/postname.html 这样的永久链接格式呢?
根据SEO理念,最佳似乎是 /postname.html 吧?(为这问题曾特意搜阅过多篇相关日志)

枫叶 reply:
2008年05月12日

@Dickey, 也没有特别的, 就是觉得这样的结构比较醒目和清爽. 我懒得SEO, 所以同样的一篇文章, 总排在人家的后面

Dickey reply:
2008年05月12日

赞成,带上年月也确实是比较一目了然。

大猫 reply:
2008年05月12日

呃…如果首页到/2008/04/postname.html 和到/postname.html是一样的深度
那样对SEO没多少影响的
还是注重内容比较好

Dickey reply:
2008年05月12日

/postname.html 链接深度应该是前者所不能比的,直接了当。
当然,更赞成你所说的“还是注重内容比较好”!

maomy said:
2008年05月29日

hehe,又来寻求技术支持啦。我想把某个blog从aaa.bb.com这样的二级域名,换到bb.com这个一级域名下,应该如何操作才能尽量减少外部链接的损失?首先当然是在一级域名下重装一个wp,把原有的数据全部导入,然后该做些什么呢?

谢谢,期待回答。

maomy reply:
2008年06月01日

如果直接把aaa.bb.com 这个二级域名redirect到bb.com,这样所有的外部链接能不丢失吗?pagerank呢?

maomy reply:
2008年06月01日

我搜到一个解决办法:

如果你以前的域名是 http://aaa.bb.com/,新域名是 http://bb.com/ ,你可以删除原域名下所有东西(或者把原域名解析到一个空目录),目录下只放一个 .htaccess 文件即可。写入下面的内容:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^y0ungs\.cn$ [NC]
RewriteRule ^(.*)$ http://bb.com/1 [R=301,L]

——–
此方法,跟直接将aaa.bb.com这个域名redirect到bb.com相比,有什么区别呢?是更好吗?

枫叶 reply:
2008年06月03日

不好意思, maomy, 这几天比较忙, 一直没有回答您的问题, 您搜到的这个方式是可以的,而且应该就是这样的。
不过中间的一个东西写错了。
应该是

RewriteCond %{HTTP_HOST} ^aaa\.bb\.com$ [NC]

maomy reply:
2008年06月05日

谢谢回复。我用另两个子域名测试了一下,暂时看不出来这样添加.htaccess的效果。想问的是,按照这样的做法操作后,对于用浏览器访问aaa.bb.com以及aaa.bb.com/2008/12/344等链接的人,会被自动跳转到bb.com和相应的页面吗?

maomy reply:
2008年06月05日

OK,我再次测试了一下,原来原先写的那段还是有错,最后一句少了个$
正确的似乎应该是:

RewriteEngine On
RewriteCond %{HTTP_HOST} ^aa\.bb\.com$ [NC]
RewriteRule ^(.*)$ http://bb.com/1 [R=301,L]

测试的结果,似乎子页面,分类,tag,包括/feed也可以直接被转过去。

谢谢!

maomy reply:
2008年06月05日

奇怪,写到网站上来之后,wp自动把.com/$1 变成了.com/1的超链接。这可能就是为什么我原来拷贝代码错误的原因?

maomy reply:
2008年06月06日

嗯,301重定向的问题基本解决。又有个新的问题,正好拿来和大家讨论一下。如前所述,把原来在aaa.bb.com的blog迁移到bb.com这个顶级域名。

第一步,已经在bb.com重新安装了wordpress,并将原来的主题、插件等都上传了。

第二步,可否直接修改wp-config.php,指向旧的数据库?(当然旧的数据库需要先把home url和blog url改为bb.com这个新地址)还是说将旧的数据库备份用myphpadmin后台管理的方式导入?这两种操作的结果是完全相同的吗?

2008年06月11日

maomy, 指向就的数据库是没有问题的, 不过数据库中的siteurl必须做修改.

maomy reply:
2008年06月11日

嗯,我知道数据库里的siteurl和home两项都要修改成bb.com。但数据库里还有一项guid,就是每个post的link url,全部都是aaa.bb.com/xx/x….这样的形式。请问这些需要全部改成bb.com/xx/x..吗?如果不改的话,好像即使把新的config.php指向旧的数据库,那些文章还都是无法访问的。

2008年06月12日

今天我刚改好,花了我半天,才真正算是基本解决。因为原采用的/%postname%/这种永久链接形式,这个问题太多了。。这一两天我也写篇文章吧,不会的互相交流。

2008年06月15日

“/2008/04/postname这样的永久链接格式, 可苦于自己先入为主的采用类似%category%/%postname%.html” 也不错!

或许你该设置为 /2008/04/postname.html 这样会更好!

Leave a comment