问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

我想用.NET的URL映射来实现如下跳转: http://127.0.0.1/test 映射到 http://127.0.0.1:88/tt.aspx?id=1

发布网友 发布时间:2022-05-05 00:20

我来回答

1个回答

热心网友 时间:2023-10-09 05:46

urlmappings不能直接映射到其他端口的网站,不过你可以这样来实现:建立一个ASP.NET 模块

public class UrlMappingMole : IHttpMole
{
    #region IHttpMole Members

    public void Dispose()
    {
    }

    public void Init(HttpApplication context)
    {
        context.BeginRequest += context_BeginRequest;
    }

    void context_BeginRequest(object sender, EventArgs e)
    {
        System.Configuration.Configuration config = WebConfigurationManager.OpenWebConfiguration("/aspnetTest");
        UrlMappingsSection urlMappingSection = (UrlMappingsSection)config.GetSection("system.web/urlMappings");
        UrlMappingCollection urlMappings = urlMappingSection.UrlMappings;
        var host = HttpContext.Current.Request.Headers["Host"];
        host = host.Remove(host.IndexOf(':'));
        for (int i = 0; i < urlMappings.Count; i++)
        {
            if (string.Equals(urlMappings[i].Url, HttpContext.Current.Request.AppRelativeCurrentExecutionFilePath))
            {
                string mappedUrl = urlMappings[i].MappedUrl;
                if (mappedUrl.StartsWith("~"))
                    mappedUrl = mappedUrl.Substring(1);
                mappedUrl = mappedUrl.Replace("127.0.0.1", host).Replace("localhost", host);
                HttpContext.Current.Response.Redirect(mappedUrl);
                break;
            }
        }
    }

    #endregion
}

在web.config里面配置:

<system.webServer>
    <moles runAllManagedMolesForAllRequests="true" >
      <add name="urlMappings" type="UrlMappingMole"/>
    </moles>
</system.webServer>
<urlMappings enabled="false">
   <add url="~/test" mappedUrl="

</urlMappings>

urlMappings里面必须要用这种形式,不能用~号,因为我没加判断,enabled要是false。

这样就可以跳转了。把这个配置在那个http://127.0.0.1/test的网站里,配置项如上方。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
股骨头坏死手术方式 退订金没有收据了怎么办 泸州台湾通行证外地人补办时间 运动手表安全吗(运动手表对身体有害吗) 扫地机器人随机式和规划式的区别 茶怎么喝才正确 如何查找电线接头 炸鱼片的做法 如何制作炸鱼片 福建泉州哪里有织带厂在招工 Apple 苹果 MacBook Air 2014款-适用对象 如何设置JBOSS通过IP网络访问,如何自动启动&#47;关闭JBoss基于jboss wamp5集成环境,开启apache服务器,然后下载安装了360wifi,结果apache服务就不能正常访问localhost了! 我将wamp的端口改为8088,可是启动eclipse后默认的显示路径仍然是http:&#47;&#47;localhost&#47;.....,不可用。 MFC 读取http文件服务器上的文件列表,并选择文件进行下载 服务器为 192.196.11.222:3210,服务器本机访问:http:&#47;&#47;localhost:88&#47;enta 其他计算机如何访问呢?? 一个软件忘了名字,只记得它是跟最右差不多的你可以给弹幕点赞的,但不是BILIBILI asp本地调试工具怎么用? 在IE浏览器里面输入&quot;http:&#47;&#47;localhost:8888&#47;&quot;怎么跳到百度页面? http://localhost:8888/怎么不能访问 谁能告诉我优酷视频电脑版,为啥不能给弹幕点赞了?? http://localhost:88/www/delete.php?id=18 爱奇艺弹幕点赞爱心怎么搞的- 问一问 mysql数据库comment字段会带来性能负担吗 114能查询车辆违章吗? 餐具和菜板发霉了,如何处理才安全 王者荣耀梦奇大招使用技巧 梦奇三技能怎么击飞敌人 王者荣耀梦奇ad怎么出装 梦奇ad装以及玩法 王者荣耀ad梦奇怎么出装 王者荣耀梦奇怎么开大 卧室门太高怎么改低 [root@localhost lyzh]# cat &#47;etc&#47;shadow 结果中的* 和 ! 和$什么意思? 怎么用本机做网站 只本机看 炸褶是什么意思? 怎么穿jk舒服且不炸褶? jk制服用水泡了十多分钟会炸褶吗? JK,格裙只有一面或者侧面和屁股炸算炸褶吗? jk没飞机盒会炸褶吗? 臀腰差多少会炸褶 有钱花借了一万二,有钱花会叫村委会和民警上门催收是真的吗,还会打电话给亲属? 你好马上金融逾期三年多8000欠款没还,今天说上门催收是真的么 说去村委会然后联系家人真的么? 百度有钱花会联系居委会吗? 宁阳农村无息贷款,怎么办? 细胞免疫的过程?(详细) 体液免疫和细胞免疫的三个阶段分别是? 细胞免疫的过程是什么? 如何举报百度有钱花? 免疫细胞的三个阶段的具体内容是什么 免疫应答的基本过程包括哪几个阶段? 细胞免疫分为什么阶段 (百度有钱花)都是骗人的,在这里我发布一下,