2010-06-08 3 views
0

IIS 6.0에서 실행되는 웹 사이트 (웹 응용 프로그램이 아닌 Visual Studio에서 두 가지 옵션 - 웹 사이트/프로젝트 만들기)이 있습니다. 이제 MVC 아키텍처에서 몇 가지 기능을 개발하고 싶습니다. Visual Studio에서 하나의 MVC 응용 프로그램을 만들었고 모든 것이 localhost에서 별도의 응용 프로그램으로 잘 작동합니다. 이제 이미 배포 한 웹 사이트 내에서이 MVC 응용 프로그램을 호스팅하고 싶습니다.호스트 웹 사이트 내 MVC 응용 프로그램

IIS 6.0의 기본 웹 사이트 내에 가상 디렉터리 (MVCDir)를 만들었습니다. 내가 대신 경로의 routes.ignoreRoute를 작성하는 경우 루트 폴더에 있던 Global.asax 파일은 나는 IgnoreRoute 시스템의 구성원이 아닌 says- 무시, 라우팅 기능 -

Shared Sub RegisterRoutes(ByVal routes As RouteCollection) 
    routes.Ignore("{resource}.axd/{*pathInfo}") 
    routes.Ignore("{resource}.aspx/{*pathInfo}") 



    routes.MapPageRoute("Default4", "{controller}/{action}/{id}", "~/MVCDir", False, New RouteValueDictionary(New With {.controller = "Home", .action = "Index", .id = Mvc.UrlParameter.Optional})) 

End Sub 

*** 참고 - 추가. Web.RoutingCollection * 내가

방법이 문제를 해결하기 위해 domain.com/home/index 실행할 때 지금은 위해 Application_Start 기능 안쪽이 라우팅 함수를 호출

? 리소스를 찾을 수 없다고 말합니다.

+0

죄송합니다. 오해, 오해 하나의 IIS 응용 프로그램에서 다른 응용 프로그램으로 요청을 전달할 것입니까? 그러나 와일드 카드 요청 처리기에 대한 내 요점은 : 루트 응용 프로그램에 대해 와일드 카드 요청 처리기를 등록했는지 확인하고 '파일 존재 확인'이 꺼져 있는지 확인하십시오. – Rup

+0

어떻게해야합니까? – Nishant

답변

0

아마도 이것은 부모 응용 프로그램에서 부모 응용 프로그램 구성을 상속하는 데 문제가 될 수 있습니다. 웹 사이트에 앱을 넣으려고 할 때 비슷한 문제가 발생했습니다.

당신은 inheritInChildApplications="false"

예와 <location> 태그에 <system.web>을 포장해야합니다 :

<location path="." inheritInChildApplications="false"> 
    <system.web> 
    <!-- ... --> 
    </system.web> 
</location> 

Here 좀 더 자세한 설명이 있습니다.

관련 문제