2013-04-05 2 views
1

호스트를 스푸핑하여 테스트 할 수 있습니까?테스트를 위해 로컬로 스푸핑하는 방법은 무엇입니까?

내가 작업하고있는 사이트는 요청 된 URL을 감지하고 브랜드 자산을 렌더링하도록 설정됩니다. 예를 들어, www.aaa.com과 www.bbb.com은 모두 내 웹 앱을 가리키고 있지만 www.aaa.com이 요청되었음을 감지하여 해당 브랜드의 올바른 자산을로드합니다.

문제는이 방법을 효과적으로 테스트하는 방법을 모른다는 것입니다. 내 첫 번째 본능은 호스트 파일에 www.aaa.com을 추가하여 127.0.0.1:64099 (예 :)로 해결했지만 포트는 지정할 수 없습니다. 실제로 IIS 나 포트 80에서 실행되는 사이트에 게시하지 않고 어떻게해야합니까?

+0

HTTP-Host-Headers? – leppie

+0

하지만 기능 테스트를 위해 어떻게 설정해야합니까? 기본적으로 웹 브라우저를 통해 페이지를 테스트합니다. 아니면 오히려 ... 나는 각 브랜드의 테스트를 위해 IIS에 그 물건들을 넣어야 할 것입니다. – Sinaesthetic

답변

2

두 URL을 모두 호스트 파일에 추가 할 수 있습니다. 포트가 지정할 필요가 없습니다, 여전히 작동합니다 : 브라우저에서

127.0.0.1 www.aaa.com 
127.0.0.1 www.bbb.com 

입력 : 위의이 사이트는 특정 호스트 이름 (www.aaa에 바인딩하는 것으로 가정

http://www.aaa.com:64099 
http://www.bbb.com:[port num] 

. com 등) 및 포트 번호가 포함됩니다.

+0

그래, 이것을 시도하고 첫 번째 부분이 효과가있었습니다. 올바른 페이지를 표시했지만 응용 프로그램이 여전히 요청을 "localhost"로 인식하고 있습니다. 이견있는 사람? – Sinaesthetic

+0

@Sinaesthetic - 당신이 의미하는 것이 무엇인지 잘 모르겠습니다. 그래서 여기에서 추측합니다. 페이지의 "소스보기"에 "로컬 호스트"에 대한 링크 (hrefs)가 있습니까? 그렇다면 앱에서 링크를 생성하는 방식을 변경해야합니다. –

+0

죄송합니다. 앱에서 사용자가 브라우저에 입력 한 내용을 확인해야합니다. 따라서 www.aaa.com을 입력하면 나머지 메커니즘이 올바른 리소스를 트리거하고로드하는 것을 확인할 수 있어야합니다. 이 시점에서 www.aaa.com이 요청되었다는 사실은 분실 된 것처럼 보입니다. 이 정보가 필요한 메소드에 중단 점을 설정하면 request.Url.Host (및 그 밖의 모든 항목)에 "localhost"가 표시됩니다. 그게 더 합리적입니까? 요청 개체의 다른 속성을 통해 엄지 손가락을 봤는데 원본 요청 URL (www.aaa.com)의 흔적이 보이지 않습니다 – Sinaesthetic

관련 문제