zoukankan      html  css  js  c++  java
  • Asp.Net Mvc 应用程序如何应对不同的URL地址?????,问题解决了

    Asp.Net Mvc 应用程序如何应对不同的URL地址?????,问题解决了

    在上一篇博文中,本人碰到了实际应用中的一些问题

    可能是我问的问题有些弱智,害的高手们为了这个低智商的问题伤透了脑筋。还有位老大,不屑一顾的说不知道我要干什么!!!

    其实在实际工作中,我想上文中描述的场景应该还是存在的。至少我现在就遇到了这个问题。

    也可能是我在上一篇文章中没有把问题描述清楚,我其实是想寻找一种Asp.net Mvc 框架结构中的解决方案。

    因为IIS服务器是一台,现在公司还没有能力添置更多的服务器,而且域名是在不同的时期申请的,领导要求将不同的域名绑定到一个Controller上。

    各位高手给出的答案为3种:URL转发,二级域名CNAME,URL rewriter(Http Module) 。但是这些我都不熟,从头来浪费时间了。

    绞尽脑汁思索解决方案,既然没有现成的,就自己啃吧!

    在Google,Bing中按照URL,Asp.net Mvc等关键词搜啊搜,一篇一篇的看。

    看着看着,突然脑海里闪出一丝光亮,解决方案有了。

    解决方案:

    将所有域名全部指向承载Asp.net Mvc应用程序的IIS服务器,这样用任何域名访问都是访问同样的一套Asp.net Mvc应用程序了。

    在Asp.net Mvc应用程序的路由规则中定义:

        AControllers(A子公司)

        BControllers(B子公司)

        CControllers(C子公司)

        DControllers(D子公司)

        HomeControllers(总公司)

    这样就满足了最开始的系统要求,然后在路由规则的最后一条创建一条默认的规则,所有的URL都最先满足这一条,然后在这条规则的Action方法中如下操作:

    string url=this.HttpContext.Request.Url.ToString();
    if (url.Contains("www.A.com"))
    {
        return RedirectToAction("Index", "A");
    }
    else
    {
        return RedirectToAction("Index", "Home");
    }

    当然这只是简单的演示,下一步还要从外部文件,例如Xml文件中读取转向规则,然后进行转向。

    哈哈,应该思路还算是正确的吧!

  • 相关阅读:
    IDETalk
    servlet概述
    过滤器(Filter)
    ieda常用快捷键
    UUID
    JRebel 7.0.10 for intellij IDEA 2017.1
    BP神经网络(手写数字识别)
    遗传算法解决TSP问题
    [CODEVS1258]关路灯
    [NOIP2007]统计数字
  • 原文地址:https://www.cnblogs.com/panda/p/1516541.html
Copyright © 2011-2022 走看看