主机安装ISAPI_Rewrite配置

  ISAPI_Rewrite是一个功能强大的网址操纵发动机的基础上正则表达式。它的行为是像Apache的mod_Rewrite ,但专为微软的Internet信息服务( IIS ) 。 ISAPI_Rewrite是一个ISAPI筛选器的书面纯的C / C + +所以速度极快。 ISAPI_Rewrite让您的自由,超出标准网址计划和发展自己的计划。

  第一。首先到官方网站下载ISAPI_Rewrite

我的机子是32位的就下32位免费版的,链接地址如下:

http://www.helicontech.com/download/isapi_rewrite/ISAPI_Rewrite3_0064_Lite.msi

可以选择不同版本:http://www.helicontech.com/download.asp

  第二:安装

安装ISAPI_Rewrite3,一路next,默认安装到了服务器的C:\ISAPI_Rewrite3(目录自由设置,但需保证有iis浏览的权限),接着打开IIS-web服务扩张-右键-添加一个新的web服务扩展,扩展名字写ISAPI_Rewrite,要求文件C:\ISAPI_Rewrite3\ISAPI_Rewrite.dll,并且设置为允许。

配置IIS

打开iis,右键你的站点属性--ISAPI 筛选器--添加--筛选器名称是ISAPI_Rewrite3 --可执行文件就是ISAPI_Rewrite.dll的路径,比如C:\ISAPI_Rewrite3\ISAPI_Rewrite.dll

给用户网站主机头加上“network service”的读权限,其实就是该用户网站的文件夹的网络读写权限。

安装IIS Rewrite3后,会在全局的网站下 “iis> 网站 》属性> isapi 筛选器”选项里面,删除 isapi_rewrite3这个ISAPI筛选器,必须去掉这个isapi_rewrite3筛选器,否则其它的网站(除首页外)的页面无法访问!

最后重启iis
当然你可以把ISAPI_Rewrite3目录放入站点根目录下,但记得要给一个users和"network  service"的读权限。

注意:有些服务器或者vps有做权限的,安装后httpd.conf可能只有everyone和system的权限,如果修改不了文件就添加一个administrator的权限

注意:如果服务器上网站较多,而仅仅要设置其中的一个,重新打开IIS-网站-右键属性-ISAPI筛选器,把里面的ISAPI_Rewrite删除,到需要设置防盗链的网站-右键属性-ISAPI筛选器-添加一个新的筛选,筛选名称ISAPI_Rewrite,可执行文件C:\ISAPI_Rewrite3\ISAPI_Rewrite.dll。这样就仅对一个网站设置伪静态了。

第三步:设置

开始菜单-所有程序-Helicon-ISAPI_Rewrite3-ISAPI_Rewrite Manager打开,点击edit加入如下规则:

# Helicon ISAPI_Rewrite configuration file
  # Version 
3.1 . 0.64  

#伪Html部份
  RewriteRule 
/ test - (\d * ) - (\d * ).html  / test.aspx\ ? id = $ 1 & aa = $ 2  

 

(写法请参照正则表达式)

因为使用的是免费版,所以只能对整个站点进行设置,这个设置将对你服务器上的所有网站生效,如果是正式版的话,将会对所有不同的网站进行单独的设置。

原test.aspx的代码为:

< form method = " post "  runat = " server " >
  id号为:
<%= id %> ,name号为 <%= name %>
</ form >  

 

test.aspx.cs的代码为:

     protected   int  id  =   0 ;
    
protected   int  name  =   0 ;

    
private   void  Page_Load( object  sender, System.EventArgs e) {
        
if  ( ! Page.IsPostBack) {
            
try  {
                id 
=   int .Parse(Request.QueryString[ " id " ].ToString());
            }
            
catch  { id  =   0 ; }
            
try  {
                name 
=   int .Parse(Request.QueryString[ " name " ].ToString());
            }
            
catch  { name  =   0 ; }
        }
    }

 

第四步,测试:

在地址栏输入:http://localhost/test-4-1000.html

网页显示结果为:id号为:4,name为1000

测试通过。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值