У меня есть большой сайт аффилированного маркетинга с миллионами продуктов, размещенных на Windows Azure. Для SEO я должен предоставить файл sitemap.xml, который динамически создается.sitemap.xml url возвращает 404 Ошибка
public ActionResult SiteMap()
{
string sitemapUrl = "https://trendley.blob.core.windows.net/sitemap/sitemap.xml";
byte[] bImage = null;
using (WebClient wc = new WebClient())
{
bImage = wc.DownloadData(sitemapUrl);
}
return File(bImage, "application/octet-stream");
}
Я добавил follwoing маршрут к моему RouteConfig:
routes.MapRoute("Sitemap",
"sitemap.xml",
new { controller = "Home", action = "Sitemap" });
К сожалению, это не workting. я получаю ->Ошибка HTTP 404.0 - Not Found
Когда я изменяю "sitemap.xml" в sitemapxml (удалить расширение) мой метод контроллера вызывается. Уже сделал некоторые исследования и играл с моим web.config, но ничего не работает.
Первое, что я попытался было добавить:
<modules runAllManagedModulesForAllRequests="true" />
Вторая вещь:
<add
name="AdfsMetadata"
path="sitemap.xml"
verb="GET"
type="System.Web.Handlers.TransferRequestHandler"
preCondition="integratedMode,runtimeVersionv4.0" />
Может кто-нибудь сказать мне, как это acomplish. Должен ли я писать свой собственный обработчик для этого?
Приветствия, Стефан
Наконец-то я понял, что я редактировал неправильно web.config :( – stefan