最新消息:

IIS6.0添加ISAPI_Rewrite组件与二级域名绑定子目录

Apache admin 1195浏览 0评论

IIS6.0是默认不支持url重写的,如果想实现apache中mod_rewrite的功能需要安装相应的组件。IIS6.0下安装ISAPI_Rewrite组件就可以实现url重写的功能了。下面主要讲一下如何在IIS6.0下安装ISAPI_Rewrite组件,以及安装后如何通过配置.htaccess文件实现二级域名绑定子目录。

一、IIS6.0安装ISAPI_Rewrite组件

1、下载ISAPI_Rewrite3组件破解版,下载地址:http://www.cr173.com/soft/20857.html。下载后将其解压,在解压目录中中有“绿色版\ISAPI_Rewrite3”目录,其中的文件就是我们需要的组件文件,将所有文件复制到相应的目录即可。

2、设置ISAPI_Rewrite3目录的权限,赋予其network service的读权限(或Users组读权限),否则会出现无法加载ISAPI_Rewrite的错误。

QQ截图20141201202340

Users组权限添加是通过添点击”添加“,然后再在输入框中输入”Users“后点击”检查名称“获得的。

QQ截图20141201202625

3、在组件目录下的httpd.conf下输入如下内容,就可以达到破解的目的:

RegistrationName= wlqcwin
RegistrationCode= 2EAD-35GH-66NN-ZYBA

QQ截图20141201202819

4、打开IIS管理器,点击需要开启url重写的的网站,右键选择属性,点击”ISAPI筛选器“。

QQ截图20141201203146

现在”ISAPI筛选器“中没有我们需要的ISAPI_Rewrite组件,点击”添加“后输入名字然后选择ISAPI_Rewrite.dll文件所在的目录,然后”确定“。

QQ截图20141201203428

5、添加完成后,启下IIS管理器,之后再次打开网站属性的”ISAPI 筛选器”,看下是不是刚刚添加的ISAPI_Rewrite变为绿色向上的箭头。

jinglingshu_2014-12-01_12-37-59

ps:重启之后,不会马上变为绿色,需要多等一会儿,或者多重启几次IIS。

QQ截图20141201204039

 

二、测试ISAPI_Rewrite组件是否正确安装

在添加的ISAPI_Rewrite组件变为绿色后就可以尝试通过.htaccess来进行url重写等功能。为了验证一下是否已经正确安装了该组件,采用如下方式验证。

1、在网站目录下添加1.php和2.php,其中1.php的内容为:<?php phpinfo();?>,2.php的内容为<?php print 123;?>。然后在网站目录下添加.htaccess文件,.htaccess文件的内容为:

RewriteEngine on
RewriteRule ^2.php$ 1.php

ps:windows下不能直接创建.htaccess文件,可以创建别的文本文件后重命名即可。

2、下载访问网站下的2.php文件,如果显示123说明组件没有装成功,如果显示的是phpinfo的内容,则说明组件安装成功了。

QQ截图20141201205120

 

 

三、.htaccess使用(二级域名绑定子目录)

我们在买一些空间时虽然空间商可以让绑定多个域名,但是只给一个网站目录,如果想要建几个站,使不同域名或者二级域名虽然映射到同一IP地址,但可以访问不同目录,这就需要借助.htaccess来实现。

如我的网站的目录下有一个子目录wiki,我想通过wiki.jinglingshu.org来访问,而不是通过www.jinglingshu.org/wiki/来访问,那么在将wiki.jinglingshu.org的IP解析到www.jinglingshu.org的IP地址后,修改.htaccess的问价内容如下:

RewriteEngine on

RewriteCond %{HTTP_HOST} ^(wiki).jinglingshu.org$
RewriteRule ^(.*)$ /%1/$1 [L, NC]

在网站的.htaccess文件中添加上述代码内容后,就可以实现通过访问wiki.jinglingshu.org来访问/wiki/目录中的内容:

QQ截图20141201210115 QQ截图20141201210135

如果想设置的子域名很多的话,可以有一个通用性的实现:

RewriteCond %{HTTP_HOST} ^(bbs|blog|download).jinglingshu.org$
RewriteRule ^(.*)$ /%1/$1 [L, NC]

这样设置.htaccess的内容就可以达到将二级域名绑定到相应的子目录中,如访问bbs.jinglingshu.org就访问www.jinglingshu.org/bbs/等等。

 

虽然IIS中.htaccess的语法与apache中可能有所不同,但大部分相同,详细.htaccess参数参考:http://www.crifan.com/figure_out_syntax_of_rewritecond_rewriterule_in_htaccess_file/。

参考资料:

1、http://www.cr173.com/html/32070_1.html

2、http://www.cr173.com/soft/20857.html

3、http://www.crifan.com/figure_out_syntax_of_rewritecond_rewriterule_in_htaccess_file/

4、http://blog.sina.com.cn/s/blog_5faaf2cb0101bq0y.html

转载请注明:jinglingshu的博客 » IIS6.0添加ISAPI_Rewrite组件与二级域名绑定子目录


Warning: Use of undefined constant PRC - assumed 'PRC' (this will throw an Error in a future version of PHP) in /usr/share/nginx/html/wp-content/themes/d8/comments.php on line 17
发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址