<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>白舟工作室 &#187; mod_rewrite</title>
	<atom:link href="http://www.baizoo.cn/tag/mod_rewrite/feed" rel="self" type="application/rss+xml" />
	<link>http://www.baizoo.cn</link>
	<description>——长风破浪会有时</description>
	<lastBuildDate>Mon, 30 Jan 2012 08:09:57 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>PJblog转WordPress文章地址重定向</title>
		<link>http://www.baizoo.cn/archives/390.html</link>
		<comments>http://www.baizoo.cn/archives/390.html#comments</comments>
		<pubDate>Sat, 21 Feb 2009 17:26:14 +0000</pubDate>
		<dc:creator>baizoo</dc:creator>
				<category><![CDATA[技术爱好]]></category>
		<category><![CDATA[mod_rewrite]]></category>
		<category><![CDATA[重定向]]></category>

		<guid isPermaLink="false">http://www.baizoo.cn/?p=390</guid>
		<description><![CDATA[动态pjblog的文章是以/article.asp?id=num结尾的，转成Wordpress之后怎么样让这个地址跳转到新的可以访问到的页面呢？如/archives/num.html 因为我这个主机是apache服务器拥有mod_rewrite组件支持，所以我们可以使用mod_rewrite进行重定向。 方法：在Wordpress根目录的.htaccess文件中加入下面语句 RewriteCond %{QUERY_STRING} ^id=([0-9]+)$ RewriteRule ^(.*)$ archives/%1.html? [R=301,L] 这样就可以实现重定向了。测试之后发觉，如果在wp后台改过固定链接之后.htaccess将会被重写，这样你就需要重新修改。 下面测试一下访问这个页面的效果http://www.baizoo.cn/article.asp?id=18 mod_rewrite内容相当丰富，这么几句话就花了我很长时间去参透，其中不仅涉及Rewrite指令，还涉及正则表达式的知识。 下面有几条常见正则表达式的格式，转来参考。 文本 . 任意一个单字符 [chars] 字符类: &#8220;chars&#8221;中的任意一个字符 [^chars] 字符类: 不在&#8221;chars&#8221;中的字符 text1&#124;text2 选择: text1 或 text2 量词 ? 前面的字符出现 0 或 1 次 * 前面的字符出现 0 或 N 次(N > 0) + 前面的字符出现 1 或 N 次(N > 1) 分组 (text) text 组 [...]]]></description>
			<content:encoded><![CDATA[<p>动态pjblog的文章是以/article.asp?id=num结尾的，转成Wordpress之后怎么样让这个地址跳转到新的可以访问到的页面呢？如/archives/num.html</p>
<p>因为我这个主机是apache服务器拥有mod_rewrite组件支持，所以我们可以使用mod_rewrite进行重定向。</p>
<p>方法：在Wordpress根目录的.htaccess文件中加入下面语句<br />
<coolcode linenum="off" lang="perl"><br />
RewriteCond %{QUERY_STRING} ^id=([0-9]+)$<br />
RewriteRule ^(.*)$ archives/%1.html? [R=301,L]<br />
</coolcode></p>
<p>这样就可以实现重定向了。测试之后发觉，如果在wp后台改过固定链接之后.htaccess将会被重写，这样你就需要重新修改。</p>
<p>下面测试一下访问这个页面的效果<a href="http://www.baizoo.cn/article.asp?id=18">http://www.baizoo.cn/article.asp?id=18</a></p>
<p>mod_rewrite内容相当丰富，这么几句话就花了我很长时间去参透，其中不仅涉及<a title="mod_rewrite" href="http://lamp.linux.gov.cn/Apache/ApacheMenu/mod/mod_rewrite.html" target="_blank">Rewrite指令</a>，还涉及正则表达式的知识。</p>
<p>下面有几条常见正则表达式的格式，转来参考。<span id="more-390"></span></p>
<blockquote><p>文本<br />
  .           任意一个单字符<br />
  [chars]     字符类: &#8220;chars&#8221;中的任意一个字符<br />
  [^chars]    字符类: 不在&#8221;chars&#8221;中的字符<br />
  text1|text2 选择: text1 或 text2</p>
<p>量词<br />
  ?           前面的字符出现 0 或 1 次<br />
  *           前面的字符出现 0 或 N 次(N > 0)<br />
  +           前面的字符出现 1 或 N 次(N > 1)</p>
<p>分组<br />
  (text)      text 组<br />
              (常用于设置一个选择的边界，或用于生成后引用：<br />
               在RewriteRule中可以用 $N 引用第N个分组)</p>
<p>锚<br />
  ^           锚定到行首<br />
  $           锚定到行尾</p>
<p>转义<br />
  \c          对给定的字符c进行转义<br />
              (比如对&#8221;.[]()&#8221;进行转义，等等)</p>
</blockquote>
]]></content:encoded>
			<wfw:commentRss>http://www.baizoo.cn/archives/390.html/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

