如何让Fiddler停止忽略对本地主机的访问?


143

使用Fiddler在Internet Explorer中监视HTTP请求和响应时,它将忽略所有定向到http:// localhost的通信


我认为这只是IE <9中的问题,对吗?
Josh Mouch 2014年

嗯...默认情况下,不会忽略我的本地主机流量,我也使用IE 11对其进行了测试。
m3nda 2015年

我还必须从IIS切换到IIS Express
Niico

Fiddler曾经是这个出色的工具,但是现在这只是配置方面的噩梦。
松饼人

Answers:


100

为了使Fiddler在本地主机上调试时捕获流量,请在按F5键开始进行脱位后,更改地址,以便localhost具有“。”。之后。

例如,您开始调试,并且您在地址栏中具有以下URL:

http:// localhost:49573 / Default.aspx

更改为:

http://localhost.:49573/Default.aspx

按下Enter键,Fidder将开始接载您的流量。


3
甜。如此简单有效。
布拉德利·芒特福德

12
它适用于卡西尼..如果您要通过SSL连接到站点或服务,则不需要iis ...
user20358 2011年

真好!完美运作-再简单不过了。
narayan 2012年

1
使用cygwin和curl使用以下命令对我不起作用:curl -X POST -H“ application / json” -d'{“ name”:{“ firstName”:“ eli”,“ lastName”:“ kool” }}'本地主机。
61444 / Inbound / Catch

15
WebAPI不适用于localhost。它说错误的请求-无效的主机名
Pramod Jangam '16

90

Fiddler的网站直接解决了这个问题

有几种建议的解决方法,但最直接的方法是仅使用计算机名称而不是“ localhost”或“ 127.0.0.1”:

http://machinename/mytestpage.aspx

不知道为什么Fiddler的网站不建议“在localhost之后添加句点”的建议,我认为这是最好的建议。在某些我只能在其中使用localhost的服务器环境中工作(由于ActiveX控件,权限和其他原因)尤其如此。
Josh Mouch 2014年

3
@JoshMouch因为某些Web服务器拒绝localhost.作为无效的主机名。
亚伦·詹森

3
localhost.machinename在我的案件被拒绝。
松饼人

2
如前所述,“ localhost”。不适用于许多API(或127.0.0.1)。我使用了“ localhost.fiddler ”修改,该修改对我来说非常理想。
Vman

43

正确的答案是,并非Fiddler忽略针对Localhost的流量,而是针对大多数应用程序进行了硬编码,以绕过针对localhost的请求的代理(Fiddler是其中的一个)。

因此,可以使用各种解决方法:http : //fiddler2.com/documentation/Configure-Fiddler/Tasks/MonitorLocalTraffic


1
截至2013年4月:fiddler2.com/documentation/Configure-Fiddler/Tasks/…ps感谢出色的工具Eric。
皮特

向本地主机的末尾添加句号是最好的技巧,而提琴手的网站没有提到这一点。
Josh Mouch 2014年

尝试这个页面上的其他各种解决方案:添加一个时期,改变从“本地主机的主机名。”我的机器名都没有成功取代‘’与‘ipv4.fiddler’变通办法文件中提到的本地主机,工作。
西蒙Tewsi

在地址被编码在源代码库中的项目文件中,分配给团队中的所有开发人员(例如Mercurial / Git)的情况下,或者所有开发人员实际上都没有提琴手的情况下,这些解决方案是不现实的,并且会导致更多问题。问题比他们解决。所需要的是提琴手可以在项目外部进行操作的方式,因此对项目或项目配置的影响为零。
user2960136'8

39

Fiddler v4.5.1.0允许您将“ localhost”替换为“ localhost.fiddler”,并将localhost作为计算机上运行的接收服务器的主机名。

这样可以避免在使用Visual Studio使用的内置Web服务器连接到WCF服务时出现“无法识别主机”错误。

即代替 http://localhost:51900/service.wcf你可以使用http://localhost.fiddler:51900/service.wcf


2
由于我的工作是网络配置,因此其他建议均无效。这是唯一对我有用的技巧。
Zorthgo

@Zorthgo很高兴听到。:)
乔纳森


3

使用Fiddler v4.6和默认配置无法看到来自“ localhost”的任何流量。在这里尝试了许多建议,但没有任何效果。

已启用帮助->故障排除,并且可能会看到更多请求。会话以删除线字体标记,给出的原因为“由于状态栏>进程过滤器而被隐藏”。

找到了埃里克·劳伦斯对同样问题的人的答复 http://www.telerik.com/forums/fiddler-not-capturing-ios-traffic-even-though-echo-service-works

基本上要做的是:查看Fiddler窗口底部的状态栏,该栏中的第二个小“托盘”可能显示类似“ Web浏览器”的内容。单击该,然后更改为“所有进程”。

提琴手状态栏



2

确保已选中“监视所有连接”。它对我不起作用,也许端口不一样,我需要哟从gmail看到对我的网站的httprequest我的网站在win xp和iis5(我自己的机器)上


2

为了让Fiddler从本地IIS上的本地主机捕获流量,有3个步骤(在我的计算机上有效):

  1. 单击工具>提琴手选项。确保已选中“允许远程客户端连接”。关闭提琴手。

在此处输入图片说明

  1. 在KEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Fiddler2中创建一个名为ReverseProxyForPort的新DWORD。将DWORD设置为端口80(在此处选择小数)。重新启动Fiddler。

在此处输入图片说明

  1. 将端口8888添加到客户端中定义的地址。例如localhost:8888 / MyService / WebAPI / v1 /

是的,此设置使提琴手作为反向代理运行,以便将入站请求转发到其他端口。在此示例中,它将转发到端口8888的请求转发到
80。– ozanmut

对我来说,最复杂的是完全忽略本地主机,并将所有其他流量发送给提琴手处理。您必须绕过localhost,但也要绕开本地主机,并随其功能一起将其排除。(您可以尝试使用hide 304规则进行测试。)所以我按照以下方式结束了它的排除if ((m_EnableProxy) && !(oSession.host =="127.0.0.1" || oSession.host =="localhost" || oSession.host =="ipv4.fiddler")) { oSession["X-OverrideGateway"] = "socks=127.0.0.1:8080"; oSession["ui-backcolor"] = "#EFEF9F"; }。此函数应为onBeforeRequest。
m3nda



0

Windows XP:

确保设置为单击“ Internet选项”控制面板小程序的“连接”选项卡中“拨号和虚拟专用网络设置”列表框中的每个项目的设置按钮。

我注意到,一旦我连接到VPN,Fiddler将停止使用“ LAN设置”配置。即使流量没有通过VPN。


0
  • 在命令提示符下键入ipconfig。
  • 它会给你你的IPv4地址
  • 按下服务时,在网址中将localhost替换为您的IPv4地址。

流量将显示在计算机IP地址下的Fiddler中。


-2

转到工具,提琴手选项...,选择连接选项卡,然后确保选中监视所有连接。就像Antony Scott所说的那样,还要确保将“ Web会话”窗格设置为“捕获”和[[Web浏览器]或“所有进程”]。看起来默认值为“非浏览器”。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.