404错误伪静态类封装class RewriteBase

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

这是早上找了点时间写了一个利用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 
%>

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

猜你喜欢

  • MySQL数据库本地事务原理解析

    2024-01-25 17:44:35
  • pip更新问题的解决:'python -m pip install --upgrade pip' 报错问题(最新推荐)

    2023-04-23 04:32:13
  • 分析在Python中何种情况下需要使用断言

    2022-01-03 12:36:44
  • 在notepad++中实现直接运行python代码

    2022-08-19 09:52:00
  • mysql 8.0.13 安装配置方法图文教程

    2024-01-14 15:20:52
  • mysql主键id的生成方式(自增、唯一不规则)

    2024-01-14 20:20:27
  • 关于jupyter打开之后不能直接跳转到浏览器的解决方式

    2023-07-17 01:39:55
  • node.js回调函数之阻塞调用与非阻塞调用

    2024-05-05 09:21:26
  • MySQL注入绕开过滤的技巧总结

    2024-01-14 10:42:52
  • Python接单的过程记录分享

    2022-05-24 13:33:23
  • Google开源的Python格式化工具YAPF的安装和使用教程

    2023-02-02 12:32:16
  • 手把手教你从PyCharm安装到激活(最新激活码),亲测有效可激活至2089年

    2021-06-16 19:53:55
  • python实现两张图片拼接为一张图片并保存

    2023-01-26 17:56:52
  • 详解Visual Studio使用Git忽略不想上传到远程仓库的文件

    2023-10-13 06:42:21
  • 详解tensorflow载入数据的三种方式

    2023-07-22 19:35:56
  • python字符串拼接+和join的区别详解

    2021-10-19 01:26:39
  • Java与Python之间使用jython工具类实现数据交互

    2023-10-06 18:44:09
  • Python函数基础(定义函数、函数参数、匿名函数)

    2022-04-24 05:21:41
  • Django用户认证系统如何实现自定义

    2021-02-03 07:54:38
  • Python encode()方法和decode()方法详解

    2023-06-16 11:47:15
  • asp之家 网络编程 m.aspxhome.com