我试图排除一个目录ISAPI-重写(注:这是一个windows/iis口的国防部-重写)。

该目录我想要排除的是"api"当它是在根本的网站。

这是我的规则:

RewriteRule^(/api/)(.+)$ $1$2 [NC,L]

请求看起来像这样的东西:/api/v2/用户?用户名=scottw

不幸的是,querstring值总是被排除在外,该网址是被rewrittten如/api/v2/用户。

我攻击的假设下(.+) 将捕获的其他一切。

任何建议?或者更好的方式来排除目录?

感谢

更新:我还简化的规则,但这没有改变任何东西:

RewriteRule^(/api/.+)$ 1美元

有帮助吗?

解决方案

原来有两件事你们在这里:

  1. Regex应^(api)和不^(/api)。第一"/"被排除在外。
  2. Regex析工具,船舶与ISAPI_Rewrite似乎并没有处理querystrings正常。

该规则最终似乎工作是:

RewriteRule ^(api/.+) $1 [NC,L]

其他提示

我见过有时“+”工程奇怪的是,你可以尝试切换到“.. *”我不是说这会工作,但它可能是值得一试。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top