【问题标题】:Can you use mod_rewrite to remove user-agent您可以使用 mod_rewrite 删除用户代理吗
【发布时间】:2012-08-28 18:32:34
【问题描述】:

我们的应用程序有一个过滤器,它使用传入请求的用户代理在适当的情况下重定向到我们的移动网站。我们最近向我们的 Web 应用程序添加了一个页面,所有类型都应该引用该页面。从长远来看,我们将向过滤器添加白名单功能,但在短期内,我们想要一种简单的方法来阻止过滤器触发。

如果我们可以从请求中删除或覆盖用户代理,我们将实现我们的短期目标,但这需要以这样的方式完成,以避免重新部署。像 mod_rewrite 规则这样的东西是理想的。

mod_rewrite 或类似的东西可以完成这项工作吗?它需要是一个标准的 apache 模块,所以我们只需添加一两行配置即可。

附录:

看起来我们可以使用以下组合(或类似的东西)

SetEnvIf REQUEST_URI "special/uri/path" delete_user_agent
RequestHeader unset User-Agent env=delete_user_agent

【问题讨论】:

    标签: apache mod-rewrite web user-agent


    【解决方案1】:

    不,你不能用 mod_rewrite 做到这一点:它可以在条件中使用 User-Agent 标头,但不能更改它。你需要的也许是mod_headers

    该模块提供指令来控制和修改 HTTP 请求和 响应头。标题可以合并、替换或删除。

    指令可能如下所示:

    RequestHeader unset User-Agent
    

    (您可能需要在此处使用early 来处理此标头,然后mod_rewrite 才会处理)。

    【讨论】:

      猜你喜欢
      • 2012-02-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-01-05
      • 2020-05-28
      • 1970-01-01
      • 2021-08-26
      相关资源
      最近更新 更多