ASP..Net core로 WebAPI 서버를 자주 개발하는데 종종 Angular로 만든 프론트를 wwwroot 폴더에 넣어서 함께 종종 배포하곤 합니다. 이 때, Angular web app에서 별도로 routing을 하는 경우 ASP.Net에서 먼저 http 요청을 처리하기 때문에 브라우저에서 페이지 생신시 요청되는 url이 WebAPI에서 알지 못하는 주소라서 404 Not Found를 뿜어냅니다.
이럴 때 root 경로로 redirect 해주면 간단히 해결됩니다.
app.Use(async (context, next) =>
{
await next();
if (context.Response.StatusCode == 404)
{
context.Request.Path = "/";
await next();
}
});