【问题标题】:Bind a URL from a Website to another Website Controller with IIS7.5使用 IIS7.5 将网站中的 URL 绑定到另一个网站控制器
【发布时间】:2016-02-04 08:16:53
【问题描述】:

我有两个 MVC 网站:

  • www.website1.com/Mobile
  • www.website2.com

我需要创建一个 URL www.website2.com/mobile 指向 www.website1.com/Mobile 没有任何重定向 ,我要留在www.website2.com/Mobile这个URL,打开www.website1.com/MobileController/View的内容。

【问题讨论】:

    标签: asp.net-mvc iis url-redirection


    【解决方案1】:

    至少有几种方法可以做到这一点:

    1. iFrame。您可以在www.website2.com/mobile 下创建一个指向www.website1.com/Mobile 的页面,但地址栏将保持不变。 W3 Schools 有一些基础知识,我也将其用作在页面概念中生成页面的一种方式。

    2. 反向代理。 Nginx 可以让www.website2.com/Mobile 下的站点转到www.website1.com/Mobile 作为一个可以使用的软件包。 Nginx documentation 会有更具体的细节,尽管我过去有时会使用它。

    以第二个链接为例:

    location /some/path/ {
        proxy_pass http://www.example.com/link/;
    }
    

    在你的情况下,你可能想要做这样的事情:

    location /Mobile {
        proxy_pass http://www.website1.com/Mobile/;
    }
    

    课程一必须确保正确配置 Nginx,因为它可以替代您的初始 Web 服务器。我们的想法是,Nginx 通过用户从未注意到的代理内容在幕后进行重定向和处理。

    【讨论】:

    • 您好,谢谢,我对 Nginx 不熟悉,您可以分享任何示例吗?是否与 IIS 兼容?
    • 您好,我已经检查您的答案是否正确,但我仍然想知道如何在 IIS7.5 中使用您的解决方案。谢谢
    • @Patrick 您可以使用 IIS 的 ARR 扩展来将 IIS 配置为反向代理 iis.net/downloads/microsoft/application-request-routing
    【解决方案2】:

    您可以简单地在 www.website2.com/Mobile 的视图中使用iframe,如下所示,无需重定向即可从另一个域获取内容:

    <iframe src="http://website1.com/Mobile" width = "100%" 
        height="1000" frameBorder="0"></iframe>
    

    我建议您返回 PartialView 以获取 www.website1.com/Mobile 控制器操作,以便在网站上拥有更时尚的页面2。

    【讨论】:

    • 您好,感谢您的帮助,但我已将 JB 的答案设置为正确,因为他在我创建后立即回答。
    【解决方案3】:

    使用 HTML5 你可以使用“对象”:

        <div id="MainPage" >
           <object type="text/html" data="second site URL" style="width: 100%; height: 128px;">
           </object>
         </div>   
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-10-28
      • 2020-10-18
      • 1970-01-01
      • 2016-07-16
      • 1970-01-01
      相关资源
      最近更新 更多