我在urlrewriting.config文件中设置了一些不错的url重写。这些工作很棒。但是,我想将带有.aspx扩展名的所有页面重定向到正确的页面。
例如:
如果我输入以下网址:
vouchersresults.aspx?术语= Home_and_Garden
我希望它重定向到这个:
/ vouchersresults / Home_and_Garden
两个网址都运行良好,但我不希望该网站完全使用.aspx。
我在URLrewriting.config中尝试过这一小段代码,除了在我用几个查询字符串值创建的页面上之外,它的效果很好:
<add name="301RedirectDirUrls"
redirectMode="Permanent"
redirect="Application"
ignoreCase="true"
rewriteUrlParameter="IncludeQueryStringForRewrite"
virtualUrl="^\/(?!(umbraco\/|data\/|install\/|usercontrols\/|umbraco_client\/))(.*)\.aspx"
destinationUrl="$1/$2" />
当我点击此页面上的分页按钮(/ VouchersResults / Home_and_Garden /)时会触发回发,它会将网址更改为丑陋的:
/ VouchersResults /?术语= Home_and_Garden
有没有人有任何想法可能导致这个?
由于
答案 0 :(得分:2)
删除aspx内置于umbraco中。将umbracoUseDirectoryUrls设置为true
在web.config appsettings
中<add key="umbracoUseDirectoryUrls" value="true" />
关于Url重写,如果我在IIS中使用URL Rewrite执行此操作,我会这样做
^vouchersresults/([^/]+)?$