Я добавил маршрут в свой сайт для обеспечения карты сайта, и все хорошо работало в IIS7, но после того как я развернулся, маршрут прекратил работать. Так как живой сервер выполняет IIS6, я должен был вставить новое отображение для .xml, который будет обработан .NET, и затем это начало работать.
Моя проблема, хотя находится на любом XML-файле на сайте теперь. Я продолжаю получать 404 ошибки при попытке просмотреть XML-файлы, но работы маршрута sitemap.xml. Действительно ли это - проблема маршрутизации или проблема установки IIS?
Вот мои маршруты, если это поможет
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
"Gallery-Group-View",
"Projects/{groupId}",
new { controller = "Gallery", action = "GalleryList", groupId = "" });
routes.MapRoute(
"Gallery-List-View",
"Projects/{groupId}/{galleryId}",
new { controller = "Gallery", action = "GalleryView", groupId = "", galleryId = "" });
routes.MapRoute(
"Sitemap",
"Sitemap.xml",
new { controller = "XML", action = "Sitemap" }
);
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = "" }
);
Проблема в том, что по умолчанию IIS 6.0 не поддерживает маршруты без расширений. Вот статья, которая должна помочь вам решить эту проблему.