.NET 的 URL 重写器
我正在使用 this,但我有一些难以解决的问题。
这是我的代码的一部分:
<rewrite url="/Dictionary/(.+)/(.+)" to="~/Dictionary.aspx?page=$2&&word=$1"/>
<rewrite url="/Dictionary" to="~/Dictionary.aspx"/>
当我输入 mywebsite.com/Dictionary/cat/4 之类的链接时,该网站仅加载 mywebsite.com/Dictionary。
I am using this, but I have some hard to solve problems.
This is part of my code:
<rewrite url="/Dictionary/(.+)/(.+)" to="~/Dictionary.aspx?page=$2&&word=$1"/>
<rewrite url="/Dictionary" to="~/Dictionary.aspx"/>
When I type links like mywebsite.com/Dictionary/cat/4 the site loads only mywebsite.com/Dictionary.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
只是一个猜测。您的第二个条件与以 /Dictionary 开头的所有内容匹配。
你可能想要这个
Just a guess. Your second condition matches everything starting with /Dictionary.
You probably want this
只是一个建议,但您也可以尝试 IIS Url Rewrite 2。
Just a suggestion but you can also try out IIS Url Rewrite 2 instead.
URL Rewrite 2 是一个很好的选择,就像 XII 所说的那样,它带有一个用户界面。
对于正则表达式,正则表达式引擎避免回溯会更高效;请改用以下表达式:
“/Dictionary/([^/]+)/([^/]+)”
URL Rewrite 2 is a good option like XII said, comes with an user interface.
Regarding the regex, it would be more efficient for the regex engine to avoid backtracking; use the following expression instead:
"/Dictionary/([^/]+)/([^/]+)"