나는 어쩌면 ASP.NET에서 너무 많은 기대하지만, 아파치에 그렇게 뭔가를 요청하는 URL을 재 작성 사소한 : http://mysite/myfolder/mypage/niceurlparameter 실제로 http://mysite/mypage.html이 Global.asax 라우팅 설정에 어떤 문제가 있습니까?
가 어떻게 Global.asax에에 그렇게 않는 정적 페이지 역할을 관리?
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}/*", "~/myfolder/{page}.html");
을하지만 내가 http://mysite/myfolder/mypage/niceurlparameter를 요청할 때 (404)를 반환 유지 :
나는 이것을 시도했습니다.
그러나,이 작품 : http://mysite/myfolder/mypage.html/niceurlparameter을 요청할 때
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}.html/*", "~/myfolder/{page}.html");
그래서 난의 mypage.html을받을 수 있나요.
내 URL에서 ".html"부분을 없애고 싶습니다. 내가 뭘 놓치고 있니?
업데이트 : 어떤 이유로, 이전의 경우 '*'와일드 카드가 허용되지 않았습니다.
변경에 :
RouteTable.Routes.MapPageRoute("Static HTML", "myfolder/{page}/{whatever}", "~/myfolder/{page}.html");
는 경로 페이지를 HTML로 요청에 나타납니다,하지만 나는 오류 얻을 :
There is no build provider registered for the extension '.html'.
왜 세계 단지 (전자의 경우에 작동합니다을 URL이 html 인 경우), html이 생략되지 않았습니까?
실행중인 IIS의 버전은 무엇입니까? 나는 IIS 6가 이것을 허용하지 않을 것임을 기억하는 것처럼 보이지만 와일드 카드 매핑을 추가해야합니다. –
가능한 해결책은이 질문을 참조하십시오. http://stackoverflow.com/q/9918066/25727 – Jan
IIS는 v7.5입니다. 제안 된 링크가 도움이되었습니다. 고마워 – tishma