首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >URL重写器未获取完全匹配的内容

URL重写器未获取完全匹配的内容
EN

Stack Overflow用户
提问于 2009-11-21 02:13:26
回答 2查看 559关注 0票数 1

我正在使用UrlRewriter实现一些url重写。

所以去http://domainname/11

将转到~/Items/Details.aspx?Itemid=11

代码语言:javascript
复制
  <rewriter>
    <rewrite url="~/1" to="~/Items/Details.aspx?ItemId=1" />
    <rewrite url="~/2" to="~/Items/Details.aspx?ItemId=2" />
    <rewrite url="~/3" to="~/Items/Details.aspx?ItemId=3" />
    <rewrite url="~/11" to="~/Items/Details.aspx?ItemId=11" />
  </rewriter>

这里的问题是11总是重定向到1。和400重定向到4一样。我猜它不是完全匹配,只是某种“包含”。

我如何让它进行精确匹配呢?

我把这个用在正则表达式上,不是硬编码所有的东西,但它不能工作eitehr:

代码语言:javascript
复制
<rewriter>
    <rewrite url="~/(\d)" to="~/Items/Details.aspx?ItemId=$1" />
</rewriter>

谢谢你们!

EN

回答 2

Stack Overflow用户

发布于 2009-11-21 02:18:45

您应该指定URL的结尾,并对\d表达式使用限定符,以允许一个以上的数字:

代码语言:javascript
复制
<rewriter>
    <rewrite url="~/(\d+)$" to="~/Items/Details.aspx?ItemId=$1" />
</rewriter>
票数 1
EN

Stack Overflow用户

发布于 2009-11-21 02:17:04

代码语言:javascript
复制
<rewrite url="~/(\d+)" to="~/Items/Details.aspx?ItemId=$1" />
-------------------^
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1772327

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档