使用 Umbraco 重写时如何删除查询字符串
How to remove querystring when using Umbraco rewrite
我的 Umbraco/ASP .Net 站点有如下重写规则
<add name="Test" virtualUrl="^~/category/(.*)" destinationUrl="/category?cat=" rewriteUrlParameter="ExcludeFromClientQueryString" ignoreCase="true" />
这个想法是如果用户输入
www.example.com/category/electronics
www.example.com/category/devices
www.example.com/category/food
www.example.com/category/beverages
当他们在没有任何规则和纯 URL 的情况下到达页面时,一切都如我所料,即
www.example.com/category?cat=electronics
如果我有上述规则,当您在上面的任何页面上单击 link 时,它总是 adds/forwards 查询字符串参数 i.e cat=
。
如何停止 forwarding/adding 参数?
您可以使用以下 URL 重写规则:
<rule name="add query string" stopProcessing="true">
<match url="^category/([^/]+)/$" />
<action type="Redirect" url="http://www.sample1.com/category?cat={R:1}" appendQueryString="false" />
</rule>
如果你没有在 iis 中安装 URL rite 模块你可以从下面安装它 link:
我的 Umbraco/ASP .Net 站点有如下重写规则
<add name="Test" virtualUrl="^~/category/(.*)" destinationUrl="/category?cat=" rewriteUrlParameter="ExcludeFromClientQueryString" ignoreCase="true" />
这个想法是如果用户输入
www.example.com/category/electronics
www.example.com/category/devices
www.example.com/category/food
www.example.com/category/beverages
当他们在没有任何规则和纯 URL 的情况下到达页面时,一切都如我所料,即
www.example.com/category?cat=electronics
如果我有上述规则,当您在上面的任何页面上单击 link 时,它总是 adds/forwards 查询字符串参数 i.e cat=
。
如何停止 forwarding/adding 参数?
您可以使用以下 URL 重写规则:
<rule name="add query string" stopProcessing="true">
<match url="^category/([^/]+)/$" />
<action type="Redirect" url="http://www.sample1.com/category?cat={R:1}" appendQueryString="false" />
</rule>
如果你没有在 iis 中安装 URL rite 模块你可以从下面安装它 link: