2

我有一个问题如下:

我想从 /index.php?jobs 重写为 /index.php?retail-jobs-in-london

我尝试了以下规则:

<rule name="jobs" stopProcessing="true">
   <match url="index.php$" />
   <conditions trackAllCaptures="true">
      <add input="{QUERY_STRING}" pattern="jobs" />
   </conditions>
   <action type="Redirect" appendQueryString="false" url="http://www.domain.com/index.php?retail-jobs-in-london" />
</rule>

但是,我收到预期页面/index.php?retail-jobs-in-london 的错误,我相信因为“jobs”在预期页面的查询字符串中,所以它会尝试循环。

我怎样才能明确地查找一个查询字符串,它完全是并且只有“工作”?

提前致谢

4

1 回答 1

2

这应该有效。

更改此行,使正则表达式匹配字符串的开头和结尾:

<add input="{QUERY_STRING}" pattern="^jobs$" />

或者您可以将其更改为仅当它以“jobs”开头时才匹配,这将在其他内容添加到末尾时处理:

<add input="{QUERY_STRING}" pattern="^jobs" />

于 2013-04-29T08:50:34.567 回答