三月 29th, 2007

让 WordPress 的 URL 规范化

Category: WordPress, Author: Nicky, Popularity: 22%
WordPress Zac谈到URL网址规范化问题,主要就是说要让网站的URL地址唯一化,不然会造成复制内容而影响搜索引擎结果排名。在WordPress中,如果你启用了Permalinks,那么很不幸你的URL地址就成了2个。如:你的Permalinks结构是archives/123这样,我们就可以通过http://www.domain.com/archives/123和http://www.domain.com/?p=123访问到你的这篇文章,同样,分类和page也存在这样的现象。 前几天介绍了一些301重定向的WordPress插件,能够自动处理这个问题的就是“Permalink Redirect”。它的使用方法很简单,功能却不简单,除了处理上面提到的这个问题,还可以自动让/index.php重定向到根目录下面,和自动在每个目录结尾加上”/”,让你的目录地址也唯一,总之它能做的事情就是让你的WordPress URL地址唯一。另外有一个附加功能,可以选择是否让/feed/定位到你的FeedBurner地址上,相比Feedburner Feed Replacement要差一点,不能把/wp-rss2.php这些地址一起转移了。 它最近的一个版本是07年3月提供的0.6.3版,支持到目前最高的WordPress 2.1.2。但在URL网址规范化中提到的一个重要的问题,就是有没有WWW的问题,它却没有这个功能。如果因为这个问题再安装一个Redirection或者WWW-Redirect插件,就显得有些小提大作了,而且这2个插件都不能完美搞定WWW问题,Matt老大的no-www插件也只能去WWW。我的做法是手动修改.htaccess,把下面一段加在# BEGIN WordPress上面。
<ifmodule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.osxcn\.com$ [NC]
RewriteRule ^(.*)$ http://www.osxcn.com/$1 [R=301,L]
</ifmodule>
效果是:只要不是这个地址www.osxcn.com,就把已绑定的二级域名(如blog.osxcn.comnicky.osxcn.com这些)包括osxcn.com永久重定向到www.osxcn.com。我以前有很多二级域名,现在都不要了,全部重定向到www上面。 相关检测工具 HTTP Status Codes Checker Search Engine Friendly Redirect Checker

Tags:, , , , , .
评论数量(37) | Add Comments
本文网址:http://www.osxcn.com/wordpress/let-wordpress-the-url-standardization.html



37 Comments so far

» You can leave a response or Trackback .

  1. Gravatar Icon nowa Says:
    从用户体验上来说,这是URL友好~~~嘿嘿
  2. Gravatar Icon Nicky Says:
    URL规范化无论对用户和bot来说,我相信这都是一个好的事情。
  3. Gravatar Icon Freeman Says:
    我的blog是放在blog/目录下,所以.htaccess的设置得改一下,我只是在 RewriteEngine On和 RewriteBase /blog/ 之间,加上 RewriteCond %{HTTP_HOST} !^www\.snsnow\.com$ [NC] RewriteRule ^(.*)$ http://www.snsnow.com/blog/$1 [R=301,L] 本来想让主页也来一个转向,只是感觉如果网站根目下再加一个.htaccess,那么blog每次得经过两次过滤,虽然对于性能来讲没什么影响,但总是感觉不爽。不知道是不是自己心理方面的缘故?^_^
  4. Gravatar Icon Nicky Says:
    你的http://www.snsnow.com/和http://www.snsnow.com/blog/放的就是不同的内容啊。
  5. Gravatar Icon y0ungs Says:
    这个写得不错,很受用的教程。
  6. Gravatar Icon vipmedia.cn Says:
    http://www.vipmedia.cn 不错,WP自己写的好象不好用的。
  7. Gravatar Icon yeahlang Says:
    Nicky,你好,请教个问题,如果我加了 RewriteEngine On RewriteCond %{HTTP_HOST} !^www\.osxcn\.com$ [NC] RewriteRule ^(.*)$ http://www.osxcn.com/$1 [R=301,L] 原来的 RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] 还需要吗? 我把它改称这样,会不会有作用? RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] RewriteCond %{HTTP_HOST} !^www\.yeahlang\.com$ [NC] RewriteRule ^(.*)$ http://www.yeahlang.com/$1 [R=301,L] # BEGIN WordPress
  8. Gravatar Icon Nicky Says:
    你这种探索精神很好,回答你的问题。 1、原来的 # BEGIN WordPress RewriteEngine On ...... 这些肯定需要 2、改成那样也是可以的,而且代码更精简,不过需要这样: RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^www\.yeahlang\.com$ [NC] RewriteRule ^(.*)$ http://www.yeahlang.com/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] 试试就知道了。
  9. Gravatar Icon yeahlang Says:
    多谢Nicky,搞定了! 你的Blog已经成为的学习WP最好的地方了,呵呵~ 刚从BO-BLOG转过来!
  10. Gravatar Icon muma Says:
    我倒是很想让我的BLOG规范化,不过开启了Permalink以后,按照以前默认的地址能访问日志,按照规范化以后的地址访问却都是404 Not Found... T_T 我明明已经上传了.htaccess并且设置为可写了呀,难道因为是二级域名的关系?
  11. Gravatar Icon Nicky Says:
    很明显是 rewrite 的问题,你应该先检查一下你的主机是否开启了这个模块?这个和二级域名没有关系。
  12. Gravatar Icon muma Says:
    @Nicky:我也就这个问题问过管理员了,他给我的答复是已经开启了,而且http://bbs.stage1st.com的重定向没问题,真是见鬼了
  13. Gravatar Icon Nicky Says:
    那就见鬼了。 你尝试一下安装一个全新的 wordpress ,可以排除插件的干扰。
  14. Gravatar Icon 北极冰仔 Says:
    我原来也遇到过这种问题, 后来换服务器转到DH上发现省了好多事, 支持.htaccess并且在面板里面就可以选择你的域名是否保留www.
  15. Gravatar Icon Bourne Says:
    我在配置好.htaccess后,还是无法实现打开修改后的url。 也许是apache的问题,还在试验……
  16. Gravatar Icon Blank Says:
    wordpress中文版好像不支持redirection功能! 有无别的方法可以补救!
  17. Gravatar Icon Nicky Says:
    中文版不支持?我倒没有研究过,最好的办法就是到 wordpress.org 下载原版,我一直都是这么做的。
  18. Gravatar Icon hottosee Says:
    well i like it
  19. Gravatar Icon shaoqing Says:
    我找不到.htaccess文件。应该在哪里找到?
  20. Gravatar Icon semon Says:
    你好,现在的WORDPRESS 已经不存在这个问题了,重写后就已经是唯一地址了,
  21. Gravatar Icon Beach Says:
    不错,我转载了...
  22. Gravatar Icon forexask.com Says:
    htaccess文件在哪里找到?
  23. Gravatar Icon rexsky Says:
    好东东..收下了...
  24. Gravatar Icon p268 Says:
    URL规范化很有用,学习了
  25. Gravatar Icon 飞龙在天 Says:
    不错,不过 这个好像用robot.txt就可以搞定的吧?看我的链接里面的文章,可以帮我检查一下哦。
  26. Gravatar Icon 小天博客 Says:
    文章很好,但站长的网站似乎并没有使用这类插件,测试了站长几个页面,几个地址都是指向一个页面。为何自己不用呢?
  27. Gravatar Icon Nicky Says:
    WordPress 2.3 以后的版本已经自带了这些功能。
  28. Gravatar Icon 小天博客 Says:
    而且用了这个插件,如果是博客的第二个页面或者分类、存档的第二个页面,只要是第二个页面就都会出错。 用软件测试,显示进入了循环301转向,从有后缀“/”转到没有后缀"/",然后又转过来,反复301转向,页面就打不开了,一直找不到原因。
  29. Gravatar Icon 念漠 Says:
    如果我要把已绑定的二级域名(如blog.osxcn.com和nicky.osxcn.com这些)包括www.osxcn.com永久重定向到osxcn.com 请问Nicky,这段修改.htaccess的代码改如何写呢? 谢谢!
  30. Gravatar Icon Nicky Says:
    RewriteCond %{HTTP_HOST} !^osxcn.com$ [NC] RewriteRule ^(.*)$ http://osxcn.com/$1 [R=301,L]
  31. Gravatar Icon Beautiful Skin Says:
    很好的教程,但是有时候优化可不要过度了,过度了反而不好,慢慢来。
  32. Gravatar Icon nevst Says:
    你好,我的按要求改成如下: 网站 http://www.playgaia.cn # BEGIN WordPress RewriteEngine On RewriteBase / RewriteCond %{HTTP_HOST} !^www\.playgaia.cn\.cn$ [NC] RewriteRule ^(.*)$ http://www.playgaia.cn/$1 [R=301,L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] # END WordPress 用firefox 打开时出错: 此页面重定向不正确 Firefox 检测到该服务器正在将此地址的请求循环重定向。 * 此问题可能是因为禁用或拒绝 Cookie 导致。 用ie7.0半天没有反映,打不开. 望有知道 的人指点
  33. Gravatar Icon robin Says:
    URL规范化很有用,学习了
  34. Gravatar Icon 完美世界私服 Says:
    恩,wordpress是我见过的最好的了,目前的群发软件还不能攻克
  35. Gravatar Icon single Says:
    你好nicky拜读你很多精彩文章,在这个过程中我想请教您一个问题。 应为我的主机不支持重定向,所以我在permalink里选择了Day and name http://www.singlestudio.cn/blog/index.php/2008/05/02/sample-post/ 这个方式。但是现在通过http://www.singlestudio.cn/blog/?p=24 和http://www.singlestudio.cn/blog/index.php/2008/04/26/blog-marksystem/都能够访问,我想只通过第二种形式来访问请问我应该怎么做,谢谢。
  36. Gravatar Icon melody Says:
    这个确实很重要的
  37. Gravatar Icon yale Says:
    收藏一下。。。 url重写哈、、

77 Trackbacks/Pingbacks

leave a reply