首页 > 解决方案 > 如何在 Apache 中为一个 RewriteCond 使用 Multile RewriteRules?

问题描述

我正在尝试检查用户代理是否为 facebook。我在 Apache conf 中添加了这段代码:

  RewriteEngine On
  RewriteCond %{HTTP_USER_AGENT} (facebookexternalhit/[0-9][L]
  RewriteRule .? - [E=customerAgent:facebook][N]

  RewriteRule ^/(.*)$ http://www.example.com:4201/$1 [L]

现在,我真正需要的是检查用户代理是否是 facebook。因此,我尝试添加一个名为“customerAgent”的环境变量,然后重定向到具有延迟端口号的相同 URL,结果我有 2 个重写规则,但它不起作用。问题是什么?以及如何添加一个 env var 然后使用端口重定向到相同的 URL?因为我需要代码中的这个 env var 来知道它是否是 facebook。如果不可能,是否有另一种方法来添加参数(例如获取参数)而不是 env var?

标签: apachemod-rewriteuser-agent

解决方案


推荐阅读