Asp.net siteurls.config和dotnetnuke 9中的url重新编写
重写url和人性化url在Asp.net siteurls.config和dotnetnuke 9中的url重新编写,asp.net,url-rewriting,url-routing,dotnetnuke,dotnetnuke-9,Asp.net,Url Rewriting,Url Routing,Dotnetnuke,Dotnetnuke 9,重写url和人性化url在seo和性能方面非常重要。dnnurlprovider是DNN的默认ur重新布线器,规则写入siteurls.config和DNN 9: <?xml version="1.0" encoding="utf-8" ?> <RewriterConfig> <Rules> <RewriterRule> <LookFor>.*DesktopDefault.aspx(.*)
seo
和性能方面非常重要。dnnurlprovider是DNN的默认ur重新布线器,规则写入siteurls.config和DNN 9:
<?xml version="1.0" encoding="utf-8" ?>
<RewriterConfig>
<Rules>
<RewriterRule>
<LookFor>.*DesktopDefault.aspx(.*)</LookFor>
<SendTo>~/Default.aspx$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*EditModule.aspx(.*)</LookFor>
<SendTo>~/Default.aspx$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*/TabId/(\d+)(.*)/Logoff.aspx</LookFor>
<SendTo>~/Admin/Security/Logoff.aspx?tabid=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*/TabId/(\d+)(.*)/rss.aspx</LookFor>
<SendTo>~/rss.aspx?TabId=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*Telerik.RadUploadProgressHandler.ashx(.*)</LookFor>
<SendTo>~/Telerik.RadUploadProgressHandler.ashx$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>[^?]*/TabId/(\d+)(.*)</LookFor>
<SendTo>~/Default.aspx?TabId=$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*BannerClickThrough.aspx(.*)</LookFor>
<SendTo>~/DesktopModules/Admin/Banners/BannerClickThrough.aspx$1</SendTo>
</RewriterRule>
<RewriterRule>
<LookFor>.*/m/(\d+)(.*)</LookFor>
<SendTo>~/rss.aspx?TabId=$1</SendTo>
</RewriterRule>
</Rules>
</RewriterConfig>
*DesktopDefault.aspx(.*
~/Default.aspx$1
*EditModule.aspx(.*)
~/Default.aspx$1
.*/TabId/(\d+)(.*)/Logoff.aspx
~/Admin/Security/Logoff.aspx?tabid=$1
.*/TabId/(\d+)(.*)/rss.aspx
~/rss.aspx?TabId=$1
*Telerik.RadUploadProgressHandler.ashx(.*)
~/Telerik.RadUploadProgressHandler.ashx$1
[^?]*/TabId/(\d+)(*)
~/Default.aspx?TabId=$1
*BannerClickThrough.aspx(.*)
~/DesktopModules/Admin/Banners/BannerClickThrough.aspx$1
.*/m/(\d+)(**)
~/rss.aspx?TabId=$1
现在,我为新的url模式添加了新规则:
<RewriterRule>
<LookFor>.*/m/(\d+)(.*)</LookFor>
<SendTo>~/Default.aspx?TabId=$1</SendTo>
</RewriterRule>
.*/m/(\d+)(**)
~/Default.aspx?TabId=$1
应用程序池已重新启动,日志文件夹中未写入任何错误,但我添加的重写规则无效。
http://domain.com/m/123 --> http://domain.com/Default.aspx?TabId=123
该方法也已经过测试:
您使用的是哪个版本的DNN?DNN 7.1+@ChrisHammond DNN9中还有其他各种处理方式。您可能需要调整SEO/URL管理/表达式设置:站点URL仅正则表达式以包含该/m/path,我不是100%确定我已经创建了第三方模块来实现这一点,但我想通过iis配置或自己的DNN手动实现。dnn9中是否有其他信息?