<?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/"
	xmlns:series="http://unfoldingneurons.com/"
	>

<channel>
	<title>不一样的蚊子 &#187; URL Rewrite</title>
	<atom:link href="http://adamghost.com/tag/url-rewrite/feed/" rel="self" type="application/rss+xml" />
	<link>http://adamghost.com</link>
	<description>交互设计师——专注用户体验。</description>
	<lastBuildDate>Mon, 23 Jan 2012 03:08:42 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=abc</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>ISAPI Rewrite 介绍及相关应用</title>
		<link>http://adamghost.com/2009/05/iis-isapi-rewrite/</link>
		<comments>http://adamghost.com/2009/05/iis-isapi-rewrite/#comments</comments>
		<pubDate>Wed, 06 May 2009 11:48:39 +0000</pubDate>
		<dc:creator>不一样的蚊子</dc:creator>
				<category><![CDATA[网摘札记]]></category>
		<category><![CDATA[IIS]]></category>
		<category><![CDATA[ISAPI_Rewrite]]></category>
		<category><![CDATA[URL Rewrite]]></category>

		<guid isPermaLink="false">http://adamghost.com/?p=427</guid>
		<description><![CDATA[什么是URL重写（URL Rewrite）？
URL 重写就是把传入 Web 请重定向到其他 URL 的过程。
比如浏览器发来请求http://adamghost.com/blog/about/，服务器自动将这个请求中定向为http://adamghost.com/blog/index.php?pagename=about 关于URL重写的相关内容我们将在以后的文章中详细介绍。
我们知道在Apache中有mod_rewrite来实现URL的重写功能（URL Rewrite），然而IIS并没有自带这个功能，因此我们就需要使用第三方组件来实现。其实目前有好几种IIS下的Rewirte组件，都是通过 ISAPI筛选器来加载然后实现URL重写的。
用得比较广泛的一个是ISAPI Rewrite，基本上国内支持Rewirte功能的Windows网站空间都采用了该组件。ISAPI Rewrite组件有免费版以及商业版，免费版只支持全局httpd.ini配置（不能对每个站点进行单独设置，除非通过加载不同的dll来实现，比较麻烦。）而商业版支持用户自定义httpd.ini文件，只要放在站点根目录下就能生效。这个大大方便了用户自己修改URL重写规则。
ISAPI Rewrite是一个基于正则表达式的强大的URL处理引擎，他使用起来基本上就像Apache的mod_rewrite，但是他是专门为微软的Internet Information Server (IIS)设计的。
ISAPI Rewrite是一个使用纯C/C++编写的ISAPI筛选器，所以速度是相当快的！ISAPI Rewrite使你可以自由的规划网站的URL。
ISAPI全称为Internet Server Application Program Interface。
ISAPI Rewrite 2 产品地址
ISAPI Rewrite 3 产品地址
3.0版本主要特性是支持采用Apache的 .htaccess文件来在IIS中使用 mod_rewrite。这个特性使得IIS和Apache在日常应用的Rewrite上的区别基本消除了。
国内大部分空间商都没有关注到商业版这个非常方便的功能，只为用户设置全局重写规则，这样会影响服务器性能，以及当某些规则比较复杂时，会造成冲突，给用户带来不便。
安装篇：
ISAPI Rewrite在安装上相当方便，如果你下载的是安装包，只需要按照提示进行安装即可。而如果你下载的是压缩包，那么只要将文件夹解压缩的任意目录，然后在IIS站点的ISAPI筛选器中添加ISAPI Rewrite的dll即可。

在站点属性中，选择ISAPI筛选器，然后添加ISAPI Rewrite组件即可。
这里要注意的是：必须给予ISAPI Rewrite所在目录IIS_WGP组的读写权限，否则你的网站就会直接Service Unavailable，应用程序池遇到错误而停止。在事件查看器中可以找到相应的错误。
使用篇：
安装成功以后，接下来就要看看怎么用了。我们这里只说一下最简单的应用，因为大多数人只用URL重写功能来实现SEF（搜索引擎友好），以及简单的防盗链的功能（可以参考利用 ISAPI Rewrite 实现防盗链）。如果您有兴趣了解一些深入的功能的话，可以去看一下官方的使用手册。
我们需要对ISAPI Rewrite编写URL重写的规则，将这些规则写在httpd.ini中，用户访问时，就能实现URL重写。
编写Rewrite规则需要我们对正则表达式有一定的了解，推荐大家看一下《30分钟正则表达式入门教程》。当你了解了正则表达式以后，如何编写规则请参考官方使用手册以及一些例子，相信很快就会上手。
ISAPI Rewrite 2使用手册
ISAPI Rewrite 3使用手册
当然，网上有很多别人写好的Rewrite Rules（重写规则），我们可以方便的使用，因为大部分程序所使用的URL重写规则是一样的，比如Discuz!, Wordpress等。
我的wordpress规则在Wordpress更换服务器遇到的问题有写。
当我们已经写好了httpd.ini以后，将httpd.ini放在相应的位置后就能使用了（免费版放在ISAPI Rewrite安装目录中，商业版只需要放在需要重写的站点根目录下就可以了）。
本文转自华鳞志的ISAPI Rewrite 介绍及相关应用一文，为避免做广告的嫌疑，已经文章中一些不必要的外部链接去掉：）
相关文章:


Wordpress更换服务器遇到的问题
iTunes无法从同步服务中载入数据类信息 请重新连接或稍后再试一次
XP IE8, Visita IE, CHM文件显示不正常
mysql 10055 错误解决方案
UTF-8 [...]]]></description>
			<content:encoded><![CDATA[<h3>什么是URL重写（URL Rewrite）？</h3>
<p>URL 重写就是把传入 Web 请重定向到其他 URL 的过程。</p>
<p>比如浏览器发来请求<a href="http://adamghost.com/blog/about/">http://adamghost.com/blog/about/</a>，服务器自动将这个请求中定向为<a href="http://adamghost.com/blog/index.php?pagename=about">http://adamghost.com/blog/index.php?pagename=about</a> 关于URL重写的相关内容我们将在以后的文章中详细介绍。</p>
<p>我们知道在Apache中有mod_rewrite来实现URL的重写功能（URL Rewrite），然而IIS并没有自带这个功能，因此我们就需要使用第三方组件来实现。其实目前有好几种IIS下的Rewirte组件，都是通过 ISAPI筛选器来加载然后实现URL重写的。</p>
<p>用得比较广泛的一个是ISAPI Rewrite，基本上国内支持Rewirte功能的Windows网站空间都采用了该组件。ISAPI Rewrite组件有免费版以及商业版，免费版只支持全局httpd.ini配置（不能对每个站点进行单独设置，除非通过加载不同的dll来实现，比较麻烦。）而商业版支持用户自定义httpd.ini文件，只要放在站点根目录下就能生效。这个大大方便了用户自己修改URL重写规则。</p>
<p>ISAPI Rewrite是一个基于正则表达式的强大的URL处理引擎，他使用起来基本上就像Apache的mod_rewrite，但是他是专门为微软的Internet Information Server (IIS)设计的。</p>
<p>ISAPI Rewrite是一个使用纯C/C++编写的ISAPI筛选器，所以速度是相当快的！ISAPI Rewrite使你可以自由的规划网站的URL。</p>
<p>ISAPI全称为Internet Server Application Program Interface。</p>
<p><a href="http://www.isapirewrite.com/">ISAPI Rewrite 2 产品地址</a></p>
<p><a href="http://www.helicontech.com/isapi_rewrite/">ISAPI Rewrite 3 产品地址</a></p>
<p>3.0版本主要特性是支持采用Apache的 .htaccess文件来在IIS中使用 mod_rewrite。这个特性使得IIS和Apache在日常应用的Rewrite上的区别基本消除了。</p>
<p>国内大部分空间商都没有关注到商业版这个非常方便的功能，只为用户设置全局重写规则，这样会影响服务器性能，以及当某些规则比较复杂时，会造成冲突，给用户带来不便。</p>
<h3>安装篇：</h3>
<p>ISAPI Rewrite在安装上相当方便，如果你下载的是安装包，只需要按照提示进行安装即可。而如果你下载的是压缩包，那么只要将文件夹解压缩的任意目录，然后在IIS站点的ISAPI筛选器中添加ISAPI Rewrite的dll即可。</p>
<p><img class="size-full wp-image-428 alignnone" title="在站点属性中，选择ISAPI筛选器，然后添加ISAPI_Rewrite组件即可。" src="http://adamghost.com/wp-content/uploads/2009/05/isapi.jpg" alt="在站点属性中，选择ISAPI筛选器，然后添加ISAPI_Rewrite组件即可。" width="404" height="221" /></p>
<p>在站点属性中，选择ISAPI筛选器，然后添加ISAPI Rewrite组件即可。</p>
<p><strong>这里要注意的是：</strong>必须给予ISAPI Rewrite所在目录IIS_WGP组的读写权限，否则你的网站就会直接Service Unavailable，应用程序池遇到错误而停止。在事件查看器中可以找到相应的错误。</p>
<h3>使用篇：</h3>
<p>安装成功以后，接下来就要看看怎么用了。我们这里只说一下最简单的应用，因为大多数人只用URL重写功能来实现SEF（搜索引擎友好），以及简单的防盗链的功能（可以参考<a href="http://www.hua-lin.net/blog/isapi_rewrite-stop-leeching-39">利用 ISAPI Rewrite 实现防盗链</a>）。如果您有兴趣了解一些深入的功能的话，可以去看一下官方的使用手册。</p>
<p>我们需要对ISAPI Rewrite编写URL重写的规则，将这些规则写在httpd.ini中，用户访问时，就能实现URL重写。</p>
<p>编写Rewrite规则需要我们对正则表达式有一定的了解，推荐大家看一下《<a href="http://www.unibetter.com/deerchao/zhengzhe-biaodashi-jiaocheng-se.htm">30分钟正则表达式入门教程</a>》。当你了解了正则表达式以后，如何编写规则请参考官方使用手册以及一些例子，相信很快就会上手。</p>
<p><a href="http://www.isapirewrite.com/docs/ISAPI_Rewrite">ISAPI Rewrite 2使用手册</a></p>
<p><a href="http://www.helicontech.com/isapi_rewrite/doc/">ISAPI Rewrite 3使用手册</a></p>
<p>当然，网上有很多别人写好的Rewrite Rules（重写规则），我们可以方便的使用，因为大部分程序所使用的URL重写规则是一样的，比如Discuz!, Wordpress等。</p>
<p>我的wordpress规则在<a id="link_9" style="position: relative;" title="Permanent Link to Wordpress更换服务器遇到的问题" rel="bookmark" href="../2009/05/change-server-for-wordpress/">Wordpress更换服务器遇到的问题</a>有写。</p>
<p>当我们已经写好了httpd.ini以后，将httpd.ini放在<strong>相应的位置</strong>后就能使用了（免费版放在ISAPI Rewrite安装目录中，商业版只需要放在需要重写的站点根目录下就可以了）。</p>
<p>本文转自<a href="http://www.hua-lin.net/blog" target="_blank">华鳞志</a>的<a href="http://www.hua-lin.net/blog/isapi-rewrite-intro-36" target="_blank">ISAPI Rewrite 介绍及相关应用</a>一文，为避免做广告的嫌疑，已经文章中一些不必要的外部链接去掉：）<br />
<h3>相关文章:<br />
<h3>
<ul class="list-related">
<li><a href="http://adamghost.com/2009/05/change-server-for-wordpress/" rel="bookmark" title="06/05/2009">Wordpress更换服务器遇到的问题</a></li>
<li><a href="http://adamghost.com/2009/01/itunes%e6%97%a0%e6%b3%95%e4%bb%8e%e5%90%8c%e6%ad%a5%e6%9c%8d%e5%8a%a1%e4%b8%ad%e8%bd%bd%e5%85%a5%e6%95%b0%e6%8d%ae%e7%b1%bb%e4%bf%a1%e6%81%af-%e8%af%b7%e9%87%8d%e6%96%b0%e8%bf%9e%e6%8e%a5%e6%88%96/" rel="bookmark" title="13/01/2009">iTunes无法从同步服务中载入数据类信息 请重新连接或稍后再试一次</a></li>
<li><a href="http://adamghost.com/2008/12/xp-ie8-visita-ie-chm%e6%96%87%e4%bb%b6%e6%98%be%e7%a4%ba%e4%b8%8d%e6%ad%a3%e5%b8%b8/" rel="bookmark" title="18/12/2008">XP IE8, Visita IE, CHM文件显示不正常</a></li>
<li><a href="http://adamghost.com/2008/11/mysql-10055-%e9%94%99%e8%af%af%e8%a7%a3%e5%86%b3%e6%96%b9%e6%a1%88/" rel="bookmark" title="19/11/2008">mysql 10055 错误解决方案</a></li>
<li><a href="http://adamghost.com/2008/10/utf-8-bom-%e5%bc%95%e5%8f%91%e7%9a%84%e6%98%be%e7%a4%ba%e9%97%ae%e9%a2%98/" rel="bookmark" title="27/10/2008">UTF-8 BOM 引发的显示问题</a></li>
</ul>
<p><!-- Similar Posts took 10.166 ms --></p>
]]></content:encoded>
			<wfw:commentRss>http://adamghost.com/2009/05/iis-isapi-rewrite/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

