2016-10-10 2 views
2

현재 응용 프로그램이 app 인 내부 서버 serv이 있습니다.ASP .Net MVC 5 리디렉션 문제

MVC 5를 실행하고 컨트롤러 및 동작에 매핑되는 Account/Logon의 두 페이지가 있습니다.

그리고 Orders/Display 내가 호스트 서버 host 실행 IIS를 확인하기 위해 외부 세계의 인터넷 사용자 위해서는

(다시/액션 컨트롤러). 너무

호스트와 같은 내부 응용 프로그램에 호스트 URL을 매핑 /Account/Logon ->serv/app/Account/Logon

그래서 기본적으로 host/... 후 아무것도 serv/app/....

내가의 RedirectToAction("Display","Orders"); (가 많이 할 경우 내 문제로 변경됩니다

컨트롤러/액션 콤보가 많이 있기 때문에 리디렉션됩니다.

내부 서버는 호스트 부분을 잡고 "app"를 붙잡고 다음 페이지로 전환합니다 o R 경로

그래서, host/app/Orders/Display 내 문제는 호스트가 매핑이 수행하는 설정 무엇이 그 때문에 host/app/app/Orders/Display 이 URL을 매핑 IIS이다. 항상 '앱'을 추가하십시오.

이 문제를 어떻게 해결할 수 있습니까? 어떤 방법이 있습니까 serv do 상대 매핑? 순서대로 그것은 단지 원래를보고 host/Account/Logon 그래서 전환에 host/Orders/Display 것입니까?

답변

1

RedirectToAction() 대신 Redirect()을 사용하고 url을 전달하십시오.

+0

을 변경할 수있는 ASP ServerVariable이 필요합니다. 따라서 AppDomainAppVirtualPath가 경로에 삽입되지 않도록하십시오. – DenisL

+0

Html.BeginForm에도 동일한 문제가있었습니다. 이 경우 아마 사용자 정의 URL 경로로 직접 HTML을 코딩해야했습니다. 결국 우리는 포트 81 바인딩을 사용하여 응용 프로그램을 설치하고 포트 81과 IIS 상단으로 매핑을 변경하는 새로운 웹 사이트를 만듭니다. 그런 식으로 "앱"은 경로에 한 번만 표시됩니다. – DenisL