【问题标题】:Determine current page url when using off box SSL termination使用 off box SSL 终止时确定当前页面 url
【发布时间】:2014-05-13 22:39:15
【问题描述】:

如果使用离线 SSL 终止,如何确定当前请求 URL?

例如

  1. 浏览器有 url httpS://yourserver/
  2. SSL 终止解密并发送到http://yourserver
  3. IIS/ASP.NET 在http://yourserver 接收请求

在 (3) 处,如果您使用 Context.Request.UrlPage.Request.UrlPage.Request.RawUrl,它会显示带有 http 协议而不是 httpS 的 url

在这种情况下,如何获取最初在 (1) 处使用的公共 httpS URL?

【问题讨论】:

  • 我知道诸如相对和协议相对 url 之类的东西,但它们在这种特殊情况下无济于事。
  • 您的代理可以为卸载的 SSL 连接添加 HTTP 标头。

标签: asp.net asp.net-mvc ssl


【解决方案1】:

Microsoft 产品的惯例是在反向代理中添加标头。

Front-End-Https : On

所以你知道http url真的是https。

如果您进行了 URL 翻译之类的操作(例如“Original-Uri”之类的操作),您还可以添加包含原始 URL 的自己的标头。

This page 展示了如何使用 IIS AAR 作为反向代理来执行此操作,但在我的测试中,我只能让标头通过 prefixed with HTTP_(后来被剥离)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-01
    • 1970-01-01
    • 2015-05-21
    • 1970-01-01
    • 2010-12-19
    • 1970-01-01
    相关资源
    最近更新 更多