【问题标题】:Link that is domain-relative but protocol-specific与域相关但特定于协议的链接
【发布时间】:2014-01-29 15:07:15
【问题描述】:

有没有办法以相对于域但特定于协议的方式链接到资源?

例如,考虑网站上的链接http://example.com

<a href="/home/">...</a>

这链接到: http://example.com/home/ 如果您所在的页面使用 HTTP 协议。 https://example.com/home/ 如果您所在的页面使用 HTTPS 协议。

<a href="http://example.com/home/">...</a>

这链接到: http://example.com/home/ 总是

有没有一种方法可以链接到网站的 HTTP 版本而无需明确说明完整的域?

【问题讨论】:

    标签: url hyperlink uri


    【解决方案1】:

    我在RFC3986找到了答案,答案支持了我的一些盲目尝试。以前的规范有一个向后兼容功能,当且仅当它与您当前的方案匹配时,您才可以指定方案。在这些情况下,如果您从 http://example.com 链接,则 URL http:home 将链接到 http://example.com/home,但 https:home 将链接到 https://home/

    一些解析器允许方案名称出现在相对
    如果它与基本 URI 方案相同,请参考。这是
    被认为是部分 URI 先前规范中的漏洞
    [RFC1630]。应避免使用它,但允许向后使用
    兼容性。

      "http:g"        =  "http:g"         ; for strict parsers
                      /  "http://a/b/c/g" ; for backward compatibility
    

    【讨论】:

      猜你喜欢
      • 2013-09-24
      • 1970-01-01
      • 2018-04-03
      • 2019-07-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-12
      • 1970-01-01
      相关资源
      最近更新 更多