2013. 7. 22. 14:30

단축 주소를 구현하기 위해서 'MapPageRoute'를 사용합니다.

(참고 - [Asp.net] 단축 주소 구현하기)

 

'RouteTable.Routes.MapPageRoute'를 이용하다 보면 종종 '404 에러'를 볼수 있습니다.

'MapPageRoute'를 이용할때 '404 에러'는 보통 라우팅을 잘못해서 엉뚱한 페이지로 가는 경우입니다.

 

그런데 로컬에서 잘 동작하고 테스트서버에서 잘돌아가서 본서버에 적용했더니 본서버에서는 '404 에러'가 났습니다.

-_-;;;;

 

1. 해결 방법

이것저것 해봤는데 결국 먹힌건 이것 뿐입니다-_-;

 

웹 컨피그(Web.config)파일에

</system.web>

밑에 다은 코드를 추가 합니다.

 

<system.webServer>
 <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>

 

 

 

 

 

 

 

 

1-1.찝찝함

검색을 하다보면

'<modules runAllManagedModulesForAllRequests="true"/>' 

이 옵션을 쓰지 않는 것이 좋다는 말이 종종 보입니다...

이유는 따로 검색해보지 않아서 잘 모르겠네요;;

 

msdn의 셈플에서도 쓰고 있는 방법이니 별문제는 없을 것으로 생각되는데 왜 그런것일까요?

(참고 : msdn - 연습: Web Forms 응용 프로그램에서 ASP.NET 라우팅 사용 )

 

2. 다른 해결법들

몇가지 해결법들이 있는데 그중 한가지만 소개 시켜드립니다.

 

iis에 'HTTP 리디렉션' 기능을 추가합니다.

(참고 : 스택 오버플로 - ASP.NET 4.0 URL Routing HTTP Error 404.0 - Not Found)

 

 

  -> 

 

하지만 전 성공하지 못했다는거 ㅡ,.ㅡ;;