簡體   English   中英

無法讓Fiddler捕獲到IIS的本地流量

[英]Can't Get Fiddler to Capture local traffic to IIS

我最近安裝了最新的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中。

沒有什么工作,我不知道該嘗試什么。 任何意見是極大的贊賞。 謝謝,肖恩

事實證明,我需要將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之后呢?

我知道你在你的OP中提到了這一點,但是這對我有用並且非常簡單,所以我想我會分享以防其他人遇到同樣的問題並且不想經歷設置反向的麻煩代理,如果他們不需要。


我通過簡單地更改我想檢查的流量在我的身份下運行的IIS應用程序池來實現這一點,因為Fiddler似乎只捕獲默認情況下登錄用戶的流量。 只需確保您的用戶具有IIS所需的所有必要權限; 我是管理員,所以這對我來說不是問題。 當然,完成后不要忘記更改IIS應用程序池標識。

另一種選擇當然是以IIS應用程序池運行的用戶身份登錄(如果它不是像Network Service這樣的服務帳戶),然后在以其他用戶身份登錄時運行Fiddler。

我知道捕獲非Webbrowser流量的最簡單可靠的解決方案是明確指定Fiddler的端口作為Web請求的代理。 根據請求,您的代碼使代碼看起來類似於:

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

注意:不要忘記使用“捕獲”和“所有進程”運行Fiddler(在Fiddler的狀態欄中可見)

嘗試在主機文件中添加記錄(c:\\ windows \\ system32 \\ drivers \\ etc \\ hosts),如:

127.0.0.1   mysite.local

然后,您需要在IIS中的網站中進行綁定才能匹配。

然后使用http://mysite.local/

嘗試使用http://machinename./page

ie ..嘗試將句點后綴為機器名稱並瀏覽。

我遇到了同樣的問題。 通過修改Web.config來修復

<system.net>
    <defaultProxy enabled="true">
        <proxy proxyaddress="http://127.0.0.1:8888" bypassonlocal="False"/>
    </defaultProxy>
</system.net>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM