【问题标题】:How do I get domain from HTTP_REFERER in htaccess如何从 htaccess 中的 HTTP_REFERER 获取域
【发布时间】:2019-11-21 11:22:33
【问题描述】:

我正在尝试将 Access-Control-Allow-Origin 标头设置为 all 但不能使用通配符,因为它不允许使用允许凭据。 所以我的解决方案是将源头设置为任何域,例如:

Header set Access-Control-Allow-Origin "%{HTTP_REFERER}e"

但这也包括URI。 我可以从 HTTP_REFERER 中删除 uri,以便得到 https://www.example.com 吗?

非常感谢

【问题讨论】:

  • 如何在htaccess中使用php?
  • 您为什么要为此使用 referrer?意义不大。您已经获得了所需的信息 - 请求客户端已将其发送到 Origin 标头中。因此,如果您只想允许从基本上任何地方进行访问,但不使用* 通配符,请将 that 的内容发回。
  • 那我如何访问它?没有 ORIGIN 变量。我会使用任何有意义的。
  • “我该如何访问它?” - 与您尝试访问 REFERER 的方式相同 - 两者都是 HTTP 请求标头,因此它的工作方式相同两者……
  • Origin 由浏览器发送,用于在响应标头中提供 Access-Control-Allow-Origin 的任何内容,这就是该系统的工作方式。 Referer 与此无关,可以修改或根本不发送。

标签: .htaccess http-referer


【解决方案1】:

试试这个:

SetEnvIf Origin ".+" ACAO=$0
Header set Access-Control-Allow-Origin "%{ACAO}e"

【讨论】:

    猜你喜欢
    • 2011-05-14
    • 1970-01-01
    • 1970-01-01
    • 2020-07-18
    • 1970-01-01
    • 1970-01-01
    • 2012-05-21
    • 1970-01-01
    • 2016-12-17
    相关资源
    最近更新 更多