【问题标题】:Are http and https resources equivalent?http 和 https 资源是否等效?
【发布时间】:2017-03-01 22:59:21
【问题描述】:

HTTP 和 https 资源是否等效?也就是说,http://example.com/ABC 是否与https://example.com/ABC 引用相同的资源?

证据:(1) Cookies 具有匹配的域和路径,但没有“安全”属性的设置和返回独立于协议。 (2) HTTP strict transport security 将您从 HTTP 反弹到 HTTPS,并隐含假设资源相同。

反对证据:(1)Same origin policy 将不同的协议视为不同的来源。 (2)HTTP RFC表示HTTP,和https比较不相等。 (3) FTP等其他协议的资源不等同于同一域的HTTP资源(例如,FTP服务器根目录不同),那么在资源等同于HTTP方面,https比FTP有什么魔力?

【问题讨论】:

    标签: http https web-standards


    【解决方案1】:

    我要说 - 是的 - 它们是相同的资源。

    协议只描述了传输层。

    对我来说

    http://example.com/ABC

    如下所示:

    在 example.com 一个商业域,我有一个名为 ABC 的资源。

    无论协议如何,我都会阅读以下内容。

    https://example.com/ABC

    但是,可以将 Web 服务器配置为在基于 https 的同一 ABC 资源路径中表示完全不同的内容,但在我看来,它们不应该这样做。

    但是唯一需要注意的是,如果有人想为使用纯 HTTP 返回某种警告,我们现在有不同的含义,但它应该返回 500 或一些错误条件。

    【讨论】:

    • 我想没有严格的 URL 定义或 WWW 架构原则使它们相同,但我提供的 cookie 和 HSTS 证据必须足以断言它们是相同的资源。也就是说,简单地将 http 更改为 https 不会改变 URL 其余部分的目的或意图。
    【解决方案2】:

    答案是,这取决于网络服务器配置。它们可以而且在很多情况下确实指向相同的资源,因为 HTTP 和 HTTPS 往往绑定到同一个站点/应用程序。

    但是,因为它们是通过不同的 TCP 端口(HTTP 端口 80,HTTPS 端口 443)访问的,所以完全有可能让 HTTP 资源由不同的绑定站点提供,而不是由具有相同 URI 的 HTTPS 资源提供服务(除了协议),因此完全不同。

    【讨论】:

      猜你喜欢
      • 2013-11-01
      • 2022-08-19
      • 1970-01-01
      • 2013-12-13
      • 2020-12-30
      • 2021-11-04
      • 2012-09-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多