网络编程
位置:首页>> 网络编程>> Asp编程>> 404错误伪静态类封装class RewriteBase

404错误伪静态类封装class RewriteBase

作者:hayden 来源:烦恼blog 发布时间:2009-06-29 16:19:00 

标签:错误,404,伪静态,封装

这是早上找了点时间写了一个利用404错误达到静态态效果的类,准备在HTTP://PJSKIN.MYSUC.COM中使用的。不过现在没时间去弄了,因为首页嘛,一般就用动态的了,但需要将里面的地址改成静态后的地址,麻烦啊,今天就不弄啦,不过基本的类框架都写好了,剩下的只是去写写规则,及更改首页的页面内容中出现的地址。

下面来看看该RewriteBase类的使用方法:

在404asp页面中首先引入RewriteBase类

<!--#include file="cls_RewriteBase.asp"-->

然后在后面的ASP代码中按如下方面设置伪静态:

<%
Dim Rewrite
Set Rewrite = new RewriteBase    '建立对象
    'Rewrite.Char "utf-8"    '设置编码默认为utf-8
    '假设访问网址:http://pjskin.mysuc.com/style_1149.shtml
    'Rewrite.ourl  '这里可以测试最初所接收的地址,如我的空间404后该函数所接收到的地址是这样的:http://202.91.239.125/404.asp?404;http://pjskin.mysuc.com:80/style_1149.shtml=
    Rewrite.ReSetUrl "http[^;]*;([^=]*)=","$1"    '通过上面的地址,设置一个正则转换,使其变成我们在浏览器中所点击的地址。如果你的空间没有此问题,这一步可以去掉。
    'Rewrite.ourl    '这里可以测试是否成功转换为所点击的地址。如结果显示为:http://pjskin.mysuc.com/style_1149.shtml

    '**************************
    '伪静态正则规则开始。
    '**************************

    Rewrite.Rule "(http:[^:]*):80\/style_([0-9]+)\.shtml","$1/?styleid=$2"
    'Rewrite.ourl    '这里可以测试是否已转换到最后地址,将上一步格式的地址转化成如下:http://pjskin.mysuc.com/styleid=1149

    '下面的规则是我按PJBLOG的地址写了一个规则,不过有待测试。
    'Rewrite.Rule "^\/article\/([0-9]+)\.htm","/article.asp?id=$1"
    'Rewrite.Rule "^\/class_([0-9]+)\.html$","/default.asp?cateID=$1"
    'Rewrite.Rule "^\/tag\.htm$","/tag.asp"
    'Rewrite.Rule "^\/GuestBook\.html$","/LoadMod.asp?plugins=GuestBookForPJBlog"
    'Rewrite.Rule "^\/AboutMe\.html$","/LoadMod.asp?plugins=AboutMeForPJBlog"
    'Rewrite.Rule "^\/tag_([^\.])*\.html$","/default.asp?tag=$1"


    '**************************
    '转换页面中存在的动态地址
    '**************************
  '利用Rewrite.Src 函数,转换输出的页面内容中的链接网址。如果已在源码中都修改了,在这里就不需要设置。
    Rewrite.Src "(href=""[^\?]*)\?styleid=([0-9]+)","$1style_$2.shtml"    '将页面里的地址转成伪静态格式的地址。

Set Rewrite = Nothing 
%>

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com