我有一个类似于example.com/navbar?tab=1
或example.com/navbar?tab=2
的网址,我希望能够 * 重写 * URL到一个独立的slug URL.我想example.com/navbar?tab=1
重写为example.com/this-is-my-slug
和example.com/navbar?tab=2
重写为example.com/another-slug-of-mine
我想这些URL重写,而不是重定向,所以用户不必看到查询参数.但我也想为这两个页面不被混合,所以我不允许去example.com/this-is-my-slug?tab=2
,并最终查看example.com/another-slug-of-mine
我尝试使用重写Map,各种不同的模式,但这是我现在在我的Web.config
。
...
<rule name="NavigationRewrite1">
<match url="^this-is-my-slug" ignoreCase="false" />
<action type="Rewrite" url="/navbar?tab=1" appendQueryString="false" />
</rule>
<rule name="NavigationRewrite2">
<match url="^another-slug-of-mine" ignoreCase="false" />
<action type="Rewrite" url="/navbar?tab=2" appendQueryString="false" />
</rule>
...
字符串
有没有一种方法可以使用IIS重写规则来实现我正在尝试做的事情?或者我必须从C#中查找路由?
1条答案
按热度按时间x8diyxa71#
如果你想把
example.com/navbar?tab=1
重写为example.com/this-is-my-slug
,你可以参考这个规则:字符串