風雲論壇后台开发 → 浏览:帖子主题
* 帖子主题:利用 IIS 模块实现URL 重写
風雲 (ID: 3)
头衔:论坛版主
等级:光明使者
积分:494
发帖:31
来自:保密
注册:2022/3/30 15:28:53
造访:2023/1/19 16:21:40
[ 第 1 楼 ] 回复
// 需配置web.config,或者直接在IIS站点模块中添加
// App_Code/Rewrite.js

import System;
import System.Web;

package Rimifon {
    class UrlRewrite implements IHttpModule {

        static var cfg = [
            [ /^\/Portal\//i, "/home/?p=/" ]
        ];

        function Init(ha : HttpApplication) {
            ha.add_BeginRequest(doUrlRewrite);
        }

        function doUrlRewrite(obj, ea : EventArgs) {
            var ctx : HttpContext = obj.Context;
            var qstr = ctx.Request.ServerVariables["QUERY_STRING"];
            var path = ctx.Request.Path;
            if(!!qstr) qstr = "&" + qstr;
            function testUrl(reg, url) {
                if(!reg.test(path)) return false;
                ctx.RewritePath(path.replace(reg, url) + qstr);
                return true;
            }
            for(var i = 0; i < cfg.length; i++) {
                if(testUrl.apply(cfg, cfg[i])) return;
            }
        }

        function Dispose() { }

    }
}
2022/12/3 21:25:48 IP:已设置保密
分页: 1, 共 1 页
快速回复主题
账号/密码
用户: 没有注册? 密码:
评论内容