无法让Fiddler捕获到IIS的本地流量

pha*_*phy 11 c# asp.net iis fiddler

我最近安装了最新的Fiddler(Fiddler4),我尝试的任何东西都是为了让它捕获本地流量.我有一个MVC应用程序连接到在IIS上运行的MVC WebApi应用程序,这是我尝试过的:

  • Fiddler选项>连接>监视所有连接并使用PAC脚本
  • 更改了WebClient C#调用以使用以下URL但未成功:
  • 在IIS中更改我的"默认网站"以在使用我的本地帐户的新AppPool下运行,并以管理员身份运行Fiddler
  • 添加 <system.net> <defaultProxy> <proxy bypassonlocal="False" usesystemdefault="True" /> </defaultProxy> </system.net> 到我的MVC应用程序的web.config中.

没有什么工作,我不知道该尝试什么.任何意见是极大的赞赏.谢谢,肖恩

pha*_*phy 8

事实证明,我需要将Fiddler设置为反向代理(http://fiddler2.com/documentation/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy).我真的不明白为什么在我从Fiddler2升级到Fiddler4之前我没有必要这样做.我曾经能够使用http://ipv4.localhost/app-name,一切正常.但是,为了让它与Fiddler4一起工作,我设置了反向代理,然后将我的所有请求都更改http://ipv4.localhost/app-namehttp://machinename:8888/app-name.我现在可以收听应用间通信.知道我为什么不用Fiddler2做这个,但我现在在升级到Fiddler4之后呢?

  • "Fiddler2和Fiddler4之间绝对没有什么不同".所以.为什么一个有效,另一个没有, (5认同)

dea*_*dog 5

我知道你在OP中提到了这一点,但这对我有用并且非常简单,所以我想我会分享以防其他人遇到同样的问题并且不想经历设置反向的麻烦如果不需要的话可以代理。


我通过简单地将要检查其流量的 IIS 应用程序池更改为在我的身份下运行来实现此目的,因为默认情况下 Fiddler 似乎只捕获登录用户的流量。只需确保您的用户拥有 IIS 所需的所有必要权限即可;我是管理员,所以这对我来说不是问题。当然,完成后不要忘记将 IIS 应用程序池标识更改回来。

当然,另一个选项是以 IIS 应用程序池运行的用户身份登录(如果它不是类似 的服务帐户Network Service),然后在以其他用户身份登录时运行 Fiddler。

  • 这是实现此目的的最简单方法 (2认同)