2011-01-10 39 views
84

Tôi muốn theo dõi lưu lượng HTTP giữa một quá trình trên máy cục bộ của tôi và một quá trình (máy chủ) khác, cũng chạy trên máy cục bộ của tôi.Làm thế nào để cấu hình Fiddler để nghe localhost?

Tôi làm cách nào để định cấu hình Fiddler để nghe lưu lượng truy cập đến và đi từ localhost?

+0

bản sao có thể có của [Làm cách nào để Fiddler ngừng bỏ qua lưu lượng truy cập đến localhost?] (Http://stackoverflow.com/questions/214308/how-do-i-get-fiddler-to-stop-ignoring-traffic -to-localhost) –

Trả lời

4

Bạn không thể. Thay vào đó, nếu máy của bạn có tên là "myMachine", hãy trỏ trình duyệt của bạn đến http://mymachine thay vì http://localhost

+0

đã cố gắng thậm chí nhưng không thể nghe nó khi viết lại url được kích hoạt, tuy nhiên khi chuyển hướng url được kích hoạt nó cho thấy nó. –

19

.NET và Internet Explorer không gửi yêu cầu cho máy chủ cục bộ thông qua bất kỳ proxy nào, vì vậy chúng không xuất hiện trên Fiddler.

Nhiều lựa chọn thay thế có sẵn

Sử dụng tên máy thay vì localhost. Sử dụng Firefox (đã cài đặt tiện ích bổ sung của trình cắm thêm) để thực hiện yêu cầu. Sử dụng http://ipv4.fiddler thay vì localhost.

Để biết thêm thông http://www.fiddler2.com/Fiddler/help/hookup.asp

+0

Tôi tin rằng với IE 9 RC, Fiddler bây giờ có thể nắm bắt các yêu cầu localhost – SteveC

+0

Tôi đẩy URL đã thay đổi cho [trợ giúp] (http://docs.telerik.com/fiddler/observe-traffic/troubleshooting/notraffictolocalhost) xem ở trên – general03

57

Thêm một dấu chấm . sau localhost.

Ví dụ, nếu bạn có http: // localhost: 24.448/HomePage.aspx

Thay đổi nó để http://localhost.:24448/HomePage.aspx

Internet Explorer bỏ qua máy chủ proxy cho "localhost". Với dấu chấm, kiểm tra "localhost" trong tên miền không thành công.

+4

Về mặt kỹ thuật, Internet Explorer không bỏ qua proxy, chính bản thân nó là DNS. 'localhost' trong DNS luôn phân giải mà không cần sử dụng proxy. Thông tin thêm về [wikipedia] (http://en.wikipedia.org/wiki/.localhost) – Liam

+0

một phao cứu sinh ... cảm ơn. – Stultuske

+1

Là một mẹo nhỏ, nếu bạn muốn lưu trữ lưu lượng truy cập vào các dịch vụ web bên trong .net, hãy đặt proxy dịch vụ web thành 127.0.0.1:8888 trước khi gọi đến ws. – n00b

2

Và tôi vừa phát hiện ra rằng trên máy chủ cục bộ của vista '. sẽ không làm việc. Trong trường hợp này, hãy sử dụng '127.0.0.1.' (địa chỉ vòng lặp có dấu chấm được thêm vào).

3

công cụ => Tùy chọn cáy => kết nối có một textarea với các công cụ để nhảy, xóa LH từ đó

6

thử đặt tên máy/địa chỉ IP của bạn thay vì 'localhost' vào URL. Làm việc cho tôi ...

0

Thay thế máy chủ cục bộ bằng 127.0.0.1 Nếu nó không hoạt động, hãy thay đổi cấu hình chạy để hỗ trợ địa chỉ ip của bạn.

108

Bởi chỉ cần thêm cáy để url

http://localhost.fiddler:8081/ 

giao thông được định tuyến thông qua cáy và do đó được hiển thị trên cáy.

+5

** Cảm ơn bạn! ** Đây là giải pháp * duy nhất có hiệu quả với tôi. :) –

+0

điều này dường như đôi khi hoạt động – kingPuppy

+1

Hoạt động trong .net mà không phải đặt proxy trong HttpClientHandler! – Telemat

0

Tôi đang chạy Fiddler v4.4.7.1. Tôi cần sử dụng localhost: 8888 hoặc machinename: 8888 khi sử dụng tab Composer. Hãy xem tùy chọn trình đơn Trợ giúp/Giới thiệu về Fiddler, trong đó có nội dung "Chạy trên:". Tôi cho thấy machinename: 8888 ở đó.

3

Thay vì cấu hình máy chủ ứng dụng và ứng dụng khách để sử dụng tên miền khác, bạn có thể muốn định cấu hình ứng dụng khách để sử dụng proxy. Fiddler cũng tạo một proxy bạn có thể sử dụng, ghi lại tất cả lưu lượng truy cập. Rick Strahl viết blog về việc sử dụng ứng dụng này trong .NET Apps, tôi luôn đặt nhầm bài đăng trên blog này, vì vậy hãy để tôi liên kết nó ở đây: http://weblog.west-wind.com/posts/2008/Mar/14/Debugging-Http-or-Web-Services-Calls-from-ASPNET-with-Fiddler.

Tóm tắt, ứng dụng.thay đổi cấu hình là:

<system.net> 
    <defaultProxy> 
    <proxy proxyaddress="http://127.0.0.1:8888" />  
    </defaultProxy> 
</system.net> 
0

The Light,

Bạn có thể cấu hình các quá trình hoạt động như các khách hàng sử dụng cáy như một proxy. F2 là một proxy thuận tiện trên 127.0.0.1:8888, và theo mặc định sẽ ghi đè các thiết lập hệ thống trong Internet Options trong Control Panel (nếu bạn đã cấu hình bất kỳ) sao cho tất cả lưu lượng từ các giao thức chung (http, https và ftp) chuyển đến 127.0.0.1:8888 trước khi rời khỏi máy của bạn.

Giờ đây, các giao thức này thường là từ các quy trình phổ biến như trình duyệt và do đó dễ dàng được người dùng đánh lừa. Tuy nhiên, trong trường hợp của bạn, quá trình khởi tạo các yêu cầu có thể không phải là một trình duyệt, nhưng một cho một ngôn ngữ lập trình như php.exe, hoặc java.exe, hoặc bất cứ ngôn ngữ nào bạn đang sử dụng.

Nếu, giả sử bạn đang sử dụng php, bạn có thể tận dụng curl. Đảm bảo rằng mô-đun curl được bật và sau đó ngay trước mã của bạn yêu cầu, bao gồm:

curl_setopt ($ ch, CURLOPT_PROXY, '127.0.0.1:8888');

Hy vọng điều này sẽ hữu ích. Bạn cũng có thể luôn tìm kiếm nội dung như vậy từ tài liệu hướng dẫn sử dụng để làm cơ sở để bạn xây dựng dựa trên ví dụ: http://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/ConfigurePHPcURL

0

Nếu bạn đang sử dụng FireFox, Fiddler của add-on sẽ tự động cấu hình nó để không bỏ qua localhost khi capture traffic. Nếu lưu lượng truy cập từ máy chủ cục bộ vẫn (hoặc đột nhiên) không xuất hiện, hãy thử tắt và bật lại lưu lượng truy cập từ Fiddler để tiện ích bổ sung vào việc sửa cấu hình proxy.

Các vấn đề liên quan