Vai*_*arg 1 regex asp.net dotnetnuke url-rewriting
我想重写 url (DotNetNuke 友好 URL),如下所示:
从/search.aspx?query=test到:~/SearchResults?search=test
我尝试过各种组合,但看起来它没有考虑网址中问号后面的部分
<RewriterRule>
<LookFor>.*/search.aspx?query=(.+)</LookFor>
<SendTo>~/SearchResults?Search=$1</SendTo>
</RewriterRule>
Run Code Online (Sandbox Code Playgroud)
但它不起作用..
我努力了:
<RewriterRule>
<LookFor>.*/search.aspx\?query=(.+)</LookFor>
<SendTo>~/SearchResults?Search=$1</SendTo>
</RewriterRule>
Run Code Online (Sandbox Code Playgroud)
但这也不适用于 url /search.aspx?query=test。我的 search.aspx 收到 404
这是DotNetNuke的web.config中的相关部分:
<friendlyUrl defaultProvider="DNNFriendlyUrl">
<providers>
<clear />
<add name="DNNFriendlyUrl"
type="DotNetNuke.Services.Url.FriendlyUrl.DNNFriendlyUrlProvider, DotNetNuke.HttpModules"
includePageName="true"
regexMatch="[^a-zA-Z0-9 _-]"
urlFormat="humanfriendly" />
</providers>
</friendlyUrl>
Run Code Online (Sandbox Code Playgroud)
是否有什么原因导致它跳过?
这是友好的 url 重写器的源代码(如果有帮助的话)。我不太擅长正则表达式,所以我可以使用一些帮助。
| 归档时间: |
|
| 查看次数: |
2366 次 |
| 最近记录: |