【问题标题】:Redirecting site from http to https using url rewrite in IIS 8.5使用 IIS 8.5 中的 url 重写将站点从 http 重定向到 https
【发布时间】:2018-03-16 06:34:55
【问题描述】:

我正在使用 IIS 8.5 中的 url 重写模块将站点从 http 重定向到 https。由于显示错误密码,重定向表单数据(用户名和密码)未存储。

对代码进行了哪些更改,以便 https 重定向完美运行。请帮我解决这个问题。

【问题讨论】:

    标签: asp.net sql-server iis-8.5


    【解决方案1】:

    我对您的问题的一个担忧是它推断用户名和密码被发布到不通过 HTTPS 的 URL,因此重定向。这意味着,无论您在那之后进行任何重定向到 HTTPS,详细信息仍将以纯文本形式发送,任何网络嗅探器都可以读取它们。我的建议是首先确保表单操作 URL 引用 HTTPS 上的端点,因此不需要重定向。

    如果没有看到你重写规则是什么,我的猜测是你的服务器正在通过 HTTPS 返回 301 或 302 重定向到页面,这意味着将使用 GET 请求而不是 POST 来检索页面来自服务器。

    如果 HTTPS 完全适合您,那么现在通常最好只通过 HTTPS 运行整个网站。我使用的重写规则是:

    <rule name="HTTP to HTTPS redirect">
      <match url="(.*)" />
      <conditions>
        <add input="{HTTPS}" pattern="off" ignoreCase="true" />
      </conditions>
      <action type="Redirect" redirectType="Permanent" url="https://{HTTP_HOST}/{R:1}" />
    </rule>
    

    【讨论】:

    • 我已经为前端网站提供了相同的重写规则,仍然是用户名和密码,不存储在表单数据中并提供错误的密码。
    • 您能否确认您的表单的操作是指向使用 https 方案的 URL?
    猜你喜欢
    • 1970-01-01
    • 2015-03-13
    • 2015-04-28
    • 2016-02-26
    • 2020-02-08
    • 2016-04-29
    • 2016-03-20
    • 2013-06-11
    相关资源
    最近更新 更多