使用HTTPS的MvcSiteMapProvider

时间:2016-01-04 15:45:14

标签: mvcsitemapprovider sitemap.xml

我们的应用程序使用的是MvcSiteMapProvider - 2.0.0.0版本。我们希望在sitemap.xml中列出HTTPS版本的链接,即使它是HTTP请求。

实施例: 如果请求的网址为http://dummywebsitefortesting.com/sitemap.xml,那么所有<loc>标记都应包含HTTPS版本.i.e。 ,.....等。

2.0.0.0版本是否可以满足上述要求?我试图添加protocol =“https”,但没有运气。我试图添加hostName =“www.website1.com”,但也没有运气。

的问候,
克里斯

1 个答案:

答案 0 :(得分:1)

version 4.6.1之前未添加ProtocolHostName属性。

在此之前,对HTTPS的唯一支持是使用Url属性,该属性更改节点以进行绝对URL匹配,而不是使用.NET路由(控制器,操作等)。 / p>

<mvcSiteMapNode title="Home" url="https://www.example.com"/>

但是,我非常确定Url属性在版本4.0.0之前无法正常运行。

请参阅4.x开发期间有关SSL支持的相关评论herehere

请注意MvcSiteMapProvider版本4.x支持.NET framework 3.5,4.0和4.5以及MVC 2 - 5.虽然upgrading is not quite seamless,但继续下去可能是值得的这是MvcSiteMapProvider恕我直言的旧版和错误版本,特别是因为您需要在最新版本中现有的版本2.x中不存在的功能。