WebApi Route перемещается на базовый URL после публикации
У меня есть очень простой маршрут в приложении, который отлично работает в Visual Studio, но когда я запускаю процесс публикации и развертываю его на сервере IIS 8.5, он меняет маршрут и разрешается из базового URL-адреса. Я полагаю, что это как-то связано с отображением маршрутов, но я не уверен, почему это интерпретируется по-другому.
Когда я запускаю в Visual Studio и захожу на http://localhost/test - это прекрасно работает. Если я захожу на http://localhost/ - я получаю 403, как я ожидал.
После публикации в IIS происходит обратное. http: // имя_сервера / test разрешается до 404, а http: // имя_сервера теперь разрешает мою тестовую страницу.
Любая помощь будет оценена в понимании этого поведения. Версия Visual Studio - 2015, а IIS - версия 8.5. Версия WebAPI - 5.2.3.
контроллер:
[Route("test")]
public class WebApiController : ApiController
{
private static readonly ILogger Logger = Log.Logger.ForContext<WebApiController>();
[Route("")]
public string Get()
{
return "Services started. Current response time is: " + DateTime.Now.ToString("h:mm:ss tt");
}
}
Регистрация маршрута:
public static void Register(HttpConfiguration config)
{
config.MapHttpAttributeRoutes();
config.Routes.MapHttpRoute(
name: "Default",
routeTemplate: "",
defaults: new { }
);
}