【问题标题】:IIS Default RedirectIIS 默认重定向
【发布时间】:2011-10-28 21:00:43
【问题描述】:

在IIS7中,如果网站级别的默认重定向是相对路径,那么如何进行默认重定向是在https而不是http。

当前如果主机是:abc.com 并且登录页面是 abc.com/myapp/login.aspx,我将默认重定向(IIS 管理器 -> HTTPRedirect)设置为 /myapp/login.aspx。因此,如果用户在浏览器地址栏中输入 abc.com,他会被重定向到 http://abc.com/myapp/login.aspx。我想确保用户被重定向到 http*s*://abc.com/myapp/login.aspx。

是否需要根级别的 web.config?

注意,这不能在asp.net代码中完成,因为asp.net代码不参与这个请求的处理

编辑: 一种方法是使用“默认”网络应用程序,即在根(网站)级别部署网络应用程序,然后使用 asp.net 提供的标准重定向模块。对利弊有什么看法吗?

【问题讨论】:

    标签: asp.net iis iis-7 http-redirect


    【解决方案1】:

    最后我们想出了 3 个不同的选项:

    1. 在“网站”级别使用 index.htm 并放置一个 javascript 来设置 window.location.href 到 https 网址。
    2. 使用 IIS URL 重写 module
    3. 使用自定义 asp.net 模块重定向到 https URL。此模块的 dll 将在 GAC 中注册,并在“网站”级别配置该模块。在 GAC 中注册是必要的,因为该模块将为“网站”的子应用程序调用

    选项 3 的选择基于:

    1. 易于部署。在所有前端服务器上安装重写模块比在 GAC 中安装 dll 更复杂
    2. 支持不会解析 javascript 的非浏览器用户代理。这消除了选项 1。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-04-12
      • 1970-01-01
      • 2017-01-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-12
      • 2012-05-05
      相关资源
      最近更新 更多