我们的应用程序有一个过滤器,它使用传入请求的用户代理重定向到我们的移动网站(如果适用)。我们最近在我们的网络应用程序中添加了一个应该被所有类型引用的页面。我们将在长期内向过滤器添加白名单功能,但在短期内我们想要一种简单的方法来阻止过滤器触发。
如果我们可以从请求中删除或覆盖用户代理,我们将实现我们的短期目标,但这需要以这样的方式完成,以避免重新部署。类似mod_rewrite规则的东西是理想的。
mod_rewrite或类似的东西可以做这个工作吗?它需要是一个标准的apache模块,所以我们不需要添加一行或两行配置。
Adendum:
看起来我们可以使用以下组合(或类似的东西)
SetEnvIf REQUEST_URI "special/uri/path" delete_user_agent
RequestHeader unset User-Agent env=delete_user_agent
答案 0 :(得分:2)
不,您无法使用mod_rewrite
执行此操作:它可以在条件中使用User-Agent
标头,但无法更改它。你需要的可能是mod_headers。
该模块提供了控制和修改HTTP请求的指令 响应标头。标题可以合并,替换或删除。
该指令可能如下所示:
RequestHeader unset User-Agent
(您可能需要在early
之前使用mod_rewrite
来处理此标头。