2012-12-11 4 views
2

기본 페이지 뷰를 가져 오는 하위 도메인 (www.website.com/foobar)에 사이트가 있습니다. MVC 응용 프로그램의 특성상이 기본 페이지보기는 기본 콘텐츠 (www.website.com/foobar/{controller)의 "컨트롤러/액션"URL 및 (www.website.com/foobar)를 통해 확인할 수 있습니다./{컨트롤러}/{액션}).ASP.NET MVC 3 URL을 하위 도메인으로 리디렉션/라우팅

분석 및 추적을 위해 원본 짧은 URL (www.website.com/foobar) 외에도이 짧은 URL로 다시 리디렉션하고 싶습니다. 에 입력하거나 즐겨 찾기에 링크에 클릭 할 때

그래서 ... www.website.com/foobar/{controller는},

내가했습니다 www.website.com/foobar로 리디렉션한다 라우팅을 사용하여 놀아 보았지만 URL 자체를 실제로 변경하는 데는 아무 것도 얻을 수 없었습니다. 매핑을 통해 변경할 수 있는지 확실하지 않습니다.

편집 : IIS7에서 HTTP 리디렉션을 사용하는 사람이 있습니까? 최상위 계층에서 리디렉션 할 수 있지만 리디렉션이 모든보기에서 작동하도록 할 수는 없습니다.

+0

RESTful URL이 있습니까? –

+0

두 개 또는 세 개의보기 만있는 매우 작은 응용 프로그램이며 GET 또는 POST URL을 사용하지 않지만 컨트롤러에서 post 메서드를 사용합니다 (해당되는 경우). 나는 RESTful URL을 구성하는 것에 대해 100 % 익숙하지 않다. – user1437804

+0

그래서, 여기에 귀하의 질문에 foobar 컨트롤러 동작을 말합니다 .. 라이트? –

답변

1

HTTP 리디렉션 모듈을 사용하여 IIS 7의 문제를 해결할 수있었습니다. MVC 응용 프로그램이기 때문에보기에서 리디렉션을 설정하는 것이 조금 까다 롭지 만 가능합니다. 이 자습서를 사용했습니다. Creating a redirect in IIS7

편집 : 위의 해결 방법이 효과가 있지만 예측할 수없는 경향이있었습니다. 결국 사용자가 견적 컨트롤러의 색인 작업에서 입력 한 URL을 읽은 다음 URL에서 찾고있는 키워드를 리디렉션하여 문제를 해결했습니다. 인덱스 액션의 시작 부분에있는 간단한 if 문.

1

라우팅을 사용하여 도메인을 리디렉션 할 수 있다고 생각하지 않습니다. 비슷한 문제가 발생하여 며칠 동안 검색하고 질문 한 후 리디렉션을 사용하여 문제를 해결했습니다. 희망이 도움이됩니다.

+1

확인해 주셔서 감사합니다. 나는 당신에게 upvote하지만 아직 충분히 높은 평판이 없습니다! – user1437804