需要更多信息与螺旋isapi和正则表达规则

时间:2011-10-05 00:45:52

标签: regex helicontech

我正在研究螺旋规则并尝试了各种组合,但它们无法正常工作

我想要解决以下网址,

可以是这个

www.test.com/myownpages/

www.test.com/myownpages
www.test.com/myownpages/?value1=test2&value2=test2

应该解决

$1/test.aspx  [NC]

如果有人在myownpages之后给出了某些东西,它应该不起作用

www.test.com/myownpages/test (This shouldn't work)

到目前为止尝试了以下

RewriteRule ^(.*)(\/\myownpages\/)(.*)(\?)?(.+)?$ $1/test.aspx [NC] 

Anyhelp将不胜感激

由于

2 个答案:

答案 0 :(得分:1)

我对这些重写规则不太熟悉,但也许我可以帮助正则表达式。当我读它时,你想要匹配任何以“/ myownpages”,“/ myownpages /”或“/ myownpages /?anything”结尾的字符串,并在此之前捕获该部分。 我用

^(.*)/myownpages(/([?].+)?)?$

得到这个。 See it in action at RegExr.如果你需要逃避正斜杠,那就变成了。

^(.*)\/myownpages(\/([?].+)?)?$

请注意,这不会保留查询字符串中的值;它会将www.test.com/myownpages/?value1=test2&value2=test2重写为www.test.com/test.aspx

答案 1 :(得分:0)

如果您想从/ myownpages重写(非重定向) - > /myownpages/test.aspx,尝试使用:

RewriteEngine on
RewriteBase /

RewriteRule myownpages/?$ /myownpages/test.aspx [NC,QSA,L]

QSA-flag自动将查询字符串附加到源路径。