2012-12-03 3 views
7

원격 웹 서버에서 실행되는 웹 사이트에 대한 HTTP 요청 및 응답을 모니터링해야합니다. 웹 서버는 많은 웹 서비스 호출을하고이를 추적하려고합니다.원격 컴퓨터에서 실행되는 웹 사이트에 대한 피들러

웹 사이트가 로컬에서 실행되는 경우 Fiddler는 모든 웹 서비스 호출 요청을 추적하고 보고서를 제공합니다. 누군가가 같은 방법으로 나를 도울 수 있을까요

* 예 :

웹 응용 프로그램이 로컬로 실행 중이고 두 개의 웹 서비스를 호출하는 경우 통계의 총 시간이 표시됩니다. 그러나 웹 응용 프로그램이 내부적으로 호스팅되는 다른 웹 서버 (인트라넷)에서 호스팅되는 웹 서버에서 실행되고 있고 내 컴퓨터에서 피들러를 실행 한 경우 각 웹 서비스 호출에 대한 통계를 얻지 못합니다. 내가 볼 수있는 것은 aspx 페이지의 총 시간입니다. *

그래서 가능한 경우 다른 컴퓨터에서 실행중인 웹 응용 프로그램에서 호출 한 각 웹 서비스의 통계를 추적 할 수 있으며 내 컴퓨터에서 바이올린이 실행되고 있습니다.

감사합니다.

+1

서버가 실행중인 OS는 무엇입니까? –

+2

** ** 서버 **에 어떤 액세스 권한이 있는지 설명해야합니다. 서버에서 원하는 것을 실행할 수 있다면 단순히 서버의 서비스 계정에서 Fiddler in -quiet 모드를 실행하십시오. – EricLaw

+1

감사합니다. @EricLaw, 위의 업데이트 된 질문을 참조하십시오. 내 로컬 컴퓨터에서 피 들러를 실행하고 다른 웹 서버에서 실행중인 웹 응용 프로그램을 추적하려고합니다. –

답변

4

서버와 동일한 네트워크에있는 경우 항상 WireShark http://www.wireshark.org/을 사용하여 모든 패킷을 포착 할 수 있습니다.

+1

네트워크가 정말로 진절머리 나는 방식으로 구성된 경우에만. 그렇지 않으면 브로드 캐스트가 아닌 이상 당신을위한 패킷을 얻지 못합니다. – ThiefMaster

+0

필자가 이런 방식으로 피들러를 사용하려는 주된 이유는 각 웹 서비스 호출이 얼마나 오래 걸리는 지 추적하고 확인하는 것입니다. Wireshark로 가능합니까? 내가 읽은 바에 따르면 wireshark는 웹 사이트의 성능을 추적하는 것이 아니라 네트워크 문제를 해결하는 데 더 많은 도움이됩니까? –

+0

은 실제로 당신은 (@ThiefMaster 네트워크가 나쁜 방법으로 구성된 경우에만 작동 한 말과 생각) 만 확실히 더 모든 트래픽을 필터링하는 번거 로움이며, 각 호출에 걸리는 총 시간을 볼 수 있습니다. 그러나 그것은 내가 학교에서 모든 IM 트래픽을 찾을 수있는 방법이었습니다. 설정이 잘못 되었기 때문입니다.wireshark를 사용하는 것은 제공되는 모든 패키지를 읽고 패키지 요약 (그리고 총 전송 시간)을 얻을 수 있다는 것입니다. – NoLifeKing

2

컴퓨터에서 피들러를 설정하고 추적 할 웹 응용 프로그램에서 프록시로 설정할 수 있습니다. 네트워크 내부에서 쉽게, interwebs 사이에 그렇게 쉽지 않습니다.

3

WEBSERVER라는 시스템의 포트 80에서 웹 사이트를 실행한다고 가정 해 보겠습니다. 웹 프록시를 구성 할 수없는 Windows SmartPhone 장치에서 Internet Explorer Mobile Edition을 사용하여 웹 사이트에 연결하고 있습니다. 당신은 전화 및 서버의 응답에서 트래픽을 캡처합니다. 피들러에 표시되는 스마트 폰에서 8888

1.)Click Tools | Fiddler Options, and ensure the "Allow remote clients to connect" checkbox is checked. Restart if needed. 
2.)Choose Rules | Customize Rules. 
3.)Inside the OnBeforeRequest handler, add a new line of code: 
if (oSession.host.toLowerCase() == "webserver:8888") oSession.host = "webserver:80"; 
5.) navigate to http://webserver:8888 

요청의 기본 포트에서 실행

0) 웹 서버 시스템에서 시작 피들러. 요청은 웹 서버가 실행중인 포트 8888에서 포트 80으로 전달됩니다. 응답은 Fiddler를 통해 SmartPhone으로 다시 전송되며, 원래 콘텐츠가 포트 80에서 온 것인지 여부는 알 수 없습니다.

+0

질문 : 클라이언트 응용 프로그램이 대상으로하는 포트를 변경하지 않고 Fiddler를 역방향 프록시로 사용할 수 있습니까? ? A : 예, 웹 서버 소프트웨어와 Fiddler를 다시 구성해야합니다. 먼저 다른 포트에서 수신 대기하도록 웹 서버를 다시 구성해야합니다. 예를 들어 웹 서버가 포트 80에서 실행되는 경우 포트 81에서 실행되도록 재구성해야합니다. 그런 다음 포트 80에서 수신 대기하도록 피들러를 다시 구성해야합니다. 그런 다음 Fiddler가 올바르게 전달하도록 위에서 설명한 두 옵션 중 하나를 선택해야합니다 이제 다른 포트에서 실행중인 웹 서버에 대한 트래픽. – thegrunt

+0

Fiddler는 서버에서 실행하고 인바운드 요청을 다른 포트 또는 웹 서버로 전달할 수 있음을 의미하는 "역방향 프록시"로 작동 할 수 있습니다. – thegrunt

관련 문제