2013-06-07 4 views
8

최근에 Fiddler (Fiddler4)를 최근에 설치했으며 로컬 트래픽을 캡처하기 위해 노력하고있는 것은 아무것도 없습니다. Fiddler에서 IIS 로의 로컬 트래픽을 캡처 할 수 없음

  • 는 웹 클라이언트의 C 번호를 변경 & 사용 PAC 스크립트를

    • 피들러 옵션> 연결> 모니터 모든 연결 : 나는 두 IIS에서 실행되는 MVC WebApi 응용 프로그램에 연결되는 MVC 응용 프로그램을 가지고, 여기에 내가 무엇을 시도했다입니다 성공하지 다음 URL을 사용하는 전화 :
    • 내 로컬 계정을 사용하는 새로운 AppPool을 실행되도록 IIS 내 "기본 웹 사이트"를 변경하고,
    • 는 MVC 애플리케이션 내 Web.config의에 <system.net> <defaultProxy> <proxy bypassonlocal="False" usesystemdefault="True" /> </defaultProxy> </system.net> 를 추가 관리자로 피들러를 달렸다.

    아무 것도 작동하지 않았습니다. 무엇을 시도해야할지 모르겠습니다. 어떤 조언을 크게 주시면 감사하겠습니다. 감사합니다, 숀

  • +1

    정확히 캡처 할 수없는 것은 무엇입니까? 브라우저에서 MVC 응용 프로그램에 대한 요청, MVC 응용 프로그램에서 수행하는 웹 API 호출 또는 둘 다? 응용 프로그램은 어떻게 호스팅됩니까? Fiddler 프록시 주소를 명시 적으로 ''로 지정하려고 시도 했습니까? – CodeCaster

    +0

    안녕하세요 CodeCaster, MVC 응용 프로그램에서 브라우저 API MVC 응용 프로그램 호출 웹 API 호출을 캡처하는 중이 야. 두 응용 프로그램은 기본 웹 사이트의 IIS에서 가상 응용 프로그램으로 호스팅됩니다. web.config에서 내가 변경 한 유일한 프록시 설정은 위에 나와 있습니다. – pharophy

    +0

    제 질문은 실제로 제안이었습니다. – CodeCaster

    답변

    7

    역방향 프록시 (http://fiddler2.com/documentation/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy)로 피들러를 설정해야한다는 것이 밝혀졌습니다. 필자가 Fiddler2에서 Fiddler4로 업그레이드하기 전에 필자가이 작업을 수행 할 필요가 없었던 이유를 정말로 이해하지 못합니다. 나는 단지 http://ipv4.localhost/app-name을 사용할 수 있었고 모든 것이 잘 동작했다. Fiddler4와 함께 작동 시키려면 리버스 프록시를 설정 한 다음 모든 내 요청을 http://ipv4.localhost/app-name에서 http://machinename:8888/app-name으로 변경했습니다. 이제 앱 간 통신을 청취 할 수 있습니다. 내가 왜 Fiddler2로 이것을 할 필요가 없었는지에 대한 생각은 없지만 Fiddler4로 업그레이드 한 후에 할 수 있습니까?

    +0

    이 점에있어서 Fiddler2와 Fiddler4 사이에는 전혀 다른 점이 없습니다. 당신의 환경에있는 다른 것이 바뀌 었습니다. (필터 세트가 없으셨습니까?) 도움말> 필터 문제 해결 – EricLaw

    +0

    아,이 사실을 알지 못했습니다. 고마워요! – pharophy

    +3

    "Fiddler2와 Fiddler4 간에는 전혀 다른 점이 없습니다." 왜 하나가 작동하고 다른 하나는 작동하지 않습니다. – Dan

    0

    에 한번 당신의 호스트 파일에 레코드를 추가 (C : \ Windows \ system32 \ drivers를 등 \ 호스트 \), 같은 : 당신은 다음에 바인딩이 필요합니다

    127.0.0.1 mysite.local 
    

    당신의 일치하는 IIS의 웹 사이트.

    는 그럼 난 비 WebBrowser를 트래픽을 캡처 알고있는 가장 쉬운 신뢰할 수있는 솔루션이 명시 적으로 웹 요청에 대한 프록시로 피들러의 포트를 지정 http://mysite.local/

    +0

    당신의 대답에있어, 이것이 효과가있는 것처럼 보이지만, 나는 시험하지 않았다. – pharophy

    1

    이다 사용합니다.

    request.Proxy = new WebProxy("127.0.0.1", 8888) 
    

    참고 : 코드를 비슷하게 코드를 만들고 요청에 따라 "캡처"및

    +0

    나는 이와 비슷한 일을 끝냈다. 나의 대답을 보라. 내가 Fiddler를 역방향 프록시로 설정하지 않았고 필요하다고 판명되었습니다. 왜 내가 Fiddler4로 이것을해야만하는지,하지만 내가 Fiddler2를 가지고있을 때 그것은 여분의 구성 없이도 작동 했는가? – pharophy

    0

    (피들러의 상태 표시 줄에 표시) "모든 프로세스"로 피들러를 실행하는 것을 잊지 마세요 http://machinename./page

    등을 사용해보십시오. 컴퓨터 이름에 마침표를 추가하고 찾아보기를 시도하십시오.

    +0

    "."을 시도하면 IIS에서 400 잘못된 요청을 반환합니다. – pharophy

    2

    나는 당신이 당신의 작전에서 이것을 언급했음을 안다. 그러나 이것은 나를 위해 일했고 매우 간단했다. 그래서 나는 다른 사람들이 같은 문제에 부딪 치고 문제를 겪고 싶지 않을 때 나눌 것이라고 생각했다. 필요하지 않으면 역방향 프록시를 설정하십시오.


    나는이 단순히 변경하여 작업을 얻은 그의 트래픽 내 ID로 실행을 검사하고 싶었 피들러 만 기본적으로 로그인 한 사용자의 트래픽을 캡처 보이기 때문에 IIS 응용 프로그램 풀. 사용자가 IIS에 필요한 모든 권한을 가지고 있는지 확인하십시오. 나는 이것이 나를 위해 문제가되지 않도록 관리자 다. 그리고 끝났을 때 IIS 응용 프로그램 풀 ID를 다시 변경하는 것을 잊지 마십시오.

    물론 다른 옵션은 IIS 응용 프로그램 풀이 (예 : Network Service과 같은 서비스 계정이 아닌 경우) 실행중인 사용자로 로그인 한 다음 다른 사용자로 로그인 한 상태에서 피들러를 실행하는 것입니다.

    +0

    이것은 이것을 수행하는 가장 쉬운 방법입니다 –

    관련 문제