2009-09-30 2 views
1

MVC 사용.MVC URL http://controller.website.com과 같은 내용을 다시 작성하십시오.

을 example.com/user/ 가리 키도록 .example.com을 같은 어떤 URL을 만들 수있는 방법은 http://marwan.example.com 같이하는 컨트롤러는 사용자입니다

을 example.com/user/marwan 가리 키도록이 있고 액션은 marwan을 변수로 사용하는 인덱스입니다.

내가 가진 한 가지 아이디어는 404 오류를 처리하고 URL이 * .example.com과 같은 것으로 시작하고 적절한 컨트롤러로 리디렉션되는지 확인하는 맞춤 오류 페이지를 만드는 것입니다. 이것을하기위한 더 좋은 방법이 있어야합니다!

답변

0

도움이 될 수있는 답변을 살펴보십시오.

ASP.NET URL Rewriting

당신이 시도 할 수있는 사항은 다음과 같습니다

RewriteConf %{HTTP_HOST} !^example\.com$ [NC] 
RewriteRule ^(.*)$ http://example.com/user/%1$1 
RewriteRule ^/user/([a-zA-Z0-9]+)\.example\.com/(.*) http://example.com/user/$1/$2 [NC,L] 

이 규칙은 먼저 URL 경로에 호스트를 삽입 한 다음 호스트에서 올바른 값을 제거하고 그것을하는 방법을 쓰기입니다 무엇을 당신은 백엔드에서 원한다.

+0

나는 이것을 시도했지만 모든 URL에서 mysite.com/users/로 이동하면 MVC 응용 프로그램의 흐름이 흐트러집니다. mysite.com/user를 가리 키도록 username.mysite.com 만 만들 수 있습니다/mysite.com/search와 같은 다른 URL이 잘 작동합니까? 또한 URL을 숨길 수있는 방법이 있습니까? url에 username.mysite.com을 유지하는 것과 같습니다. 도움을 주셔서 감사합니다. 정말로 감사드립니다. –

+0

예. 다시 쓰기 규칙 주위에 올바른 구성 규칙을 래핑하면됩니다. 규칙 중 하나라도 모두 실패하면 mod_rewrite 변경 규칙 [C]을 포함시켜보십시오. –

관련 문제