У нас есть сопоставления MVC2 ...
routes.MapRoute(
"HomeKeepAlive",
"{controller}/KeepAlive/{objectType}/{id}",
new { controller = "Home", action="KeepAlive", objectType = UrlParameter.Optional, id = UrlParameter.Optional }
);
routes.MapRoute(
"DefaultRoute",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
Все серверы - Windows Server 2003 sp2, IIS6 с установленным .Net 4.
На нашем тестовом сервере работает маршрутизация
/Home/Ping
/Home/Ping/1
/Home/KeepAlive/Article
/Home/KeepAlive/Article/5
Но на нашем живом сервере работают только URL-адреса без идентификатора, например
/Home/Ping
/Home/KeepAlive/Article
в то время как те, у кого есть идентификатор, дают 404
/Home/Ping/1
/Home/KeepAlive/Article/5
Учитывая, что тестовый сервер работает, я предполагаю, что проблема связана с конфигурацией IIS6 на нашем работающем сервере, но я не вижу различий между ними.
Кто-нибудь видел что-нибудь подобное раньше?