配置Fiddler


想要 瀏覽更多Fiddler內容:請點擊進入Fiddler官方文檔

 

閱讀目錄:

1、Fiddler入門

2、配置web瀏覽器以使用Fiddler:

3、配置Fiddler解密HTTPS流量:

4、配置Windows客戶端以信任Fiddler根證書:

5、響應需要客戶證書的請求:

6、配置.NET應用程序:

7、配置PHP/cURL應用程序以使用Fiddler:

8、配置Java應用程序以使用Fiddler:

9、配置WinHTTP應用程序以使用Fiddler:

10、監控RAS、VPN或撥號鏈接:

11、從另一台機器捕獲流量(任何操作系統):

12、鏈到上游代理:

13、使用Fiddler作為反向代理:

14、從不同的賬號使用流量:

15、為windows 8 Metro風格的應用程序配置Fiddler:

16、配置Fiddler FOR MAC :

17、從IOS捕獲流量:

18、為Android/Google Nexus 7配置Fiddler:

19、監控Window Phone:

20、監控PocketPC:

21、配置Fiddler以對CBT保護的服務器進行身份驗證:

22、從IE或.NET監控到localhost的流量:

23、繞過上游代理:

24、從FireFOX瀏覽器中捕獲HTTPS流量:

25、故障排除:

一、Fiddler入門

1、安裝Fiddler:

  一、下載Fiddler安裝程序

  二、僅限網絡流量捕獲,請下載FiddlerCap

2、運行Fiddler安裝程序:

 

同意協議:

選擇Fiddler安裝路徑:

安裝完成單擊關閉:

 

二、配置web瀏覽器以使用Fiddler:

1、清除緩存:

要確保發送和捕獲所有請求,在開始捕獲之前清除瀏覽器的緩存

IE,Chrome,Safari和Opera

火狐

  • 要從Firefox 4+捕獲HTTP流量,請執行以下任一操作:

    • 單擊工具>使用Fiddler監控>使用Fiddler自動配置FiddlerHook,或

    • 單擊工具>選項>高級>網絡>設置>使用系統代理設置

    使用系統代理設置

  • 從Firefox捕獲HTTPS流量

手動配置

要手動配置任何瀏覽器以向Fiddler發送流量,請將瀏覽器設置為連接到代理服務器。此設置通常位於“ 選項”“首選項菜單中。使用這些設置:

地址:127.0.0.1 端口:8888

注意:如果瀏覽器使用這些設置,請在關閉Fiddler后還原這些設置,否則瀏覽器將不會加載頁面。例如,Firefox將顯示以下錯誤消息:

Firefox代理錯誤

要改為允許Fiddler自動啟用和禁用代理,請使用Proxy Auto-configuration,其URL指向Documents / Fiddler2 / Scripts / BrowserPAC.js。

例如,在Firefox中,單擊工具>選項>高級>網絡>設置,然后輸入BrowserPAC.js的URL。

自動代理配置URL

要從Fiddler中找到正確的自動配置URL:

  1. 單擊工具>提琴選項>連接
  2. 單擊“ 復制瀏覽器代理配置URL”鏈接。

復制自動更正URL

 

 三、配置Fiddler解密HTTPS流量:

1、啟用HTTPS流量解密:

  一、單擊工具>提琴選項> HTTPS。

  二、單擊Decrypt HTTPS Traffic框。

提琴手選項 - 解密HTTPS流量

2、跳過特定主機的流量解密:

  一、單擊工具>提琴選項> HTTPS。

  二、在Skip Decryption中鍵入主機名。

跳過解密

3、跳過應用程序的流量解密

  在OnBeforeRequest函數*中添加這樣的規則:

 if (oSession.HTTPMethodIs("CONNECT") && oSession["X-PROCESSINFO"] && oSession["X-PROCESSINFO"].StartsWith("outlook")) { oSession["x-no-decrypt"] = "boring process"; }
4、僅從一個主機名解密流量:
  在OnBeforeRequest函數*中添加這樣的規則:
 if (oSession.HTTPMethodIs("CONNECT") && !oSession.HostnameIs("SiteICareAbout.com")) { oSession["x-no-decrypt"] = "do not care."; }

也可以看看

使用客戶端證書響應請求

 四、配置Windows客戶端以信任Fiddler根證書:

  1. 啟用HTTPS流量解密

  2. Trust the Fiddler Root證書旁邊,單擊

之后是否要安裝此證書?,單擊

 

 五、響應需要客戶證書的請求:

要指定Fiddler的.CER文件為給定會話返回,請添加此FiddlerScript *:

 oSession["https-Client-Certificate"] = "C:\\test\\someCert.cer";

若要為Fiddler指定.CER文件,否則請將.CER文件放入:

 %USERPROFILE%\My Documents\Fiddler2\ClientCertificate.cer

要生成.CER文件:

  1. 在當前用戶的個人證書存儲中安裝證書

  2. 右鍵單擊“ 個人證書存儲”中的證書

  3. 單擊所有任務>導出...

 

六、配置.NET應用程序:

要允許.NET Framework自動連接到Fiddler,請在啟動.NET應用程序之前啟動Fiddler。

要臨時將.NET應用程序連接到Fiddler,請使用GlobalProxySelection類來設置代理:

GlobalProxySelection.Select = new WebProxy(“127.0.0.1”,8888);

或者,在yourappname.exe.config文件中指定代理

  • 如果.NET應用程序在您當前的用戶帳戶中運行,請在配置部分中添加以下內容:

    <configuration> <system.net> <defaultProxy> <proxy bypassonlocal="false" usesystemdefault="true" /> </defaultProxy> </system.net> </configuration>

有關此主題的更多信息,請參閱MSDN

  • 如果.NET應用程序在其他用戶帳戶(例如,Windows服務)中運行,請編輯machine.config文件:

    <!-- The following section is to force use of Fiddler for all applications, including those running in service accounts --> <system.net> <defaultProxy> <proxy autoDetect="false" bypassonlocal="false" proxyaddress="http://127.0.0.1:8888" usesystemdefault="false" /> </defaultProxy> </system.net>

或者,在單個WebRequest對象上手動指定代理:

 objRequest = (HttpWebRequest)WebRequest.Create(url); objRequest.Proxy= new WebProxy("127.0.0.1", 8888);

注意:重要說明:無論其他設置如何,.NET始終會繞過包含localhost的URL的Fiddler代理。因此,不要使用localhost,而是更改代碼以引用計算機名稱。例如:

  • 此URL不會出現在Fiddler中:

    HTTP://localhost/X509SignCodeService/X509SigningService.asmx

  • 此URL將顯示在Fiddler中:

    HTTP://mymachine/X509SignCodeService/X509SigningService.asmx

 

七、配置PHP/cURL應用程序以使用Fiddler:

要配置PHP / cURL應用程序以將Web流量發送到Fiddler,請在應用程序發送請求之前添加以下代碼行,其中$ ch是curl_init()返回的句柄:

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

或者,從命令行輸入以下命令:

 curl --proxy 127.0.0.1:8888


八、配置Java應用程序以使用Fiddler:

要配置Java應用程序以向Fiddler發送Web流量,請使用jre設置代理

 jre -DproxySet=true -Dhttp.proxyHost=127.0.0.1 -Dhttp.proxyPort=8888

要么:

 jre -DproxySet=true -DproxyHost=127.0.0.1 -DproxyPort=8888 MyApp

或者,以編程方式更改Java虛擬機的代理設置:

 System.setProperty("http.proxyHost", "127.0.0.1"); System.setProperty("https.proxyHost", "127.0.0.1"); System.setProperty("http.proxyPort", "8888"); System.setProperty("https.proxyPort", "8888");
詳細了解Java代理設置。


九、配置WinHTTP應用程序以使用Fiddler:

要配置WinHTTP應用程序以將Web流量發送到Fiddler,請從命令行輸入以下命令:

Windows Vista或更高版本(需要Elevated / Admin命令提示符):

 netsh winhttp set proxy 127.0.0.1:8888

在Windows 7或更早版本中,在32位NETSH中運行上述命令以配置32位WinHTTP主機,並在64位NETSH中運行該命令以配置64位WinHTTP主機。

Windows XP或更低版本

 proxycfg -p http=127.0.0.1:8888;https=127.0.0.1:8888

或者:(強制WinHTTP使用WinINET的代理設置)

 

十、監控RAS、VPN或撥號鏈接:

要監控撥號或VPN連接,請打開“ 工具” - >“提琴選項...”,然后單擊“ 監控所有連接”

監控所有連接

或者,在瀏覽器中設置“使用自動配置腳本”選項

要監視始終處於活動狀態的VPN或撥號連接(而不是LAN連接),請將HookConnectionNamed注冊表值設置為Internet選項中的連接名稱

連接名稱

注意:IE將始終使用來自任何活動VPN連接的代理設置,無論該VPN是否連接到Internet。

 

十一、從另一台機器捕獲流量(任何操作系統):

設置遠程計算機代理設置:

  1. 在Fiddler服務器(將捕獲流量的機器)上啟動Fiddler。

  2. 單擊工具>提琴選項確保選中允許遠程客戶端連接

    允許遠程客戶端連接

  3. 在另一台計算機上,將代理設置設置為端口8888處Fiddler服務器的計算機名稱。

    設置代理地址

從遠程計算機解密HTTPS流量

配置遠程計算機以信任FiddlerRoot證書

 

十二、鏈到上游代理:

配置Fiddler以在Fiddler和目標服務器之間發送和接收來自另一個代理的Web流量:

  1. 關閉提琴手。

  2. 打開Internet Explorer > 選項 > Internet選項 > 連接 > 局域網設置

  3. 單擊“ 為LAN使用代理服務器 ”復選框

    設置代理地址

  4. 輸入上游代理的地址和端口號。

  5. 重啟Fiddler。

您現在應該看到Fiddler About對話框中列出的上游代理

 

十三、使用Fiddler作為反向代理:

  一、為了使用該方法,來重新路由該請求的主機名必須 127.0.0.1:8888本地主機:8888[:: 1]:8888,或在端口機器的主機名NETBIOS 8888

  1. 單擊工具>提琴選項確保選中允許遠程客戶端連接

    允許遠程客戶端連接

  2. 關閉提琴手。

  3. 啟動REGEDIT

  4. HKEY_CURRENT_USER \ SOFTWARE \ Microsoft \ Fiddler2中創建一個名為ReverseProxyForPort的新DWORD 

  5. 將DWORD設置為Fiddler將重新路由入站流量的本地端口(通常為標准HTTP服務器的端口80)。

  6. 重啟Fiddler。

  7. 在瀏覽器中,轉到http://127.0.0.1:8888

  二、寫一個FiddlerScript規則

  1. 單擊工具>提琴選項確保選中允許遠程客戶端連接

    允許遠程客戶端連接

  2. 單擊工具> Fiddler選項,並確保選中“允許遠程客戶端連接”復選框。

  3. 如果出現提示,請重啟Fiddler。

  4. 單擊規則>自定義規則

  5. 在OnBeforeRequest處理程序*中,添加一行新代碼:

    if (oSession.host.toLowerCase() == "webserver:8888") oSession.host = "webserver:80";
  6. 使用客戶端計算機上的瀏覽器,轉到http:// webserver:8888。

  三、配置Fiddler以偵聽客戶端應用程序目標端口:

  1. 重新配置目標服務器以偵聽其他端口。例如,如果Web服務器在端口80上運行,請將其重新配置為在端口81上運行。

  2. 點擊工具>選項提琴手...

  3. 單擊連接

  4. 鍵入Fiddler旁邊的客戶端目標端口號偵聽端口:

    提琴手聽口

  5. 將Fiddler配置為反向代理或編寫FiddlerScript規則以將流量重新路由到目標服務器的新端口(如上所述)。

 

十四、從不同的賬號使用流量:

要從當前用戶以外的帳戶(例如,IIS上的ASP.NET或Windows服務)捕獲流量,請將該進程配置為使用Fiddler代理。

例如

配置.NET應用程序

配置WinHTTP應用程序

 

十五、為windows 8 Metro風格的應用程序配置Fiddler:

按照以下兩個步驟配置Windows 8的Fiddler:

  • 創建環回免除
  • 將Fiddler根證書放在計算機的受信任的根存儲中

創建回環免除:

  1. (僅限Fiddler2 :) 單擊Win8配置按鈕安裝並啟動EnableLoopback Utility

    Win8配置按鈕

  2. 選中將向Fiddler發送流量的每個應用程序旁邊的框。這需要管理員權限。

    AppContainer Loopback免除工具

現在這些應用程序可以向Fiddler發送流量。

  • 要允許Visual Studio 2012中的單元測試向Fiddler發送流量,請在單元測試運行時單擊AppContainer Loopback Exemption Utility刷新按鈕。將出現用於單元測試的AppContainer。選中此AppContainer的復選框。了解更多

  • 使用AppContainer Loopback Exemption Utility的另一種方法是聲明privateNetworkClientServer權限

將Fiddler根證書放在計算機的受信任根存儲中:

  1. 啟用Fiddler HTTPS解密功能。一個警告對話框。單擊是以信任Fiddler根證書。

    警告對話框

  2. 出現“安全警告”對話框。單擊是以安裝Fiddler Root證書。

    安全警告

  3. 出現“用戶帳戶控制”對話框。單擊是以將Fiddler根證書放入計算機范圍的受信任的根證書頒發機構存儲中。

    用戶帳戶控制對話框

  4. 出現TrustCert Confirmation對話框。單擊

    TrustCert確認

 

十六、配置Fiddler FOR MAC :

虛擬化產品(如VMWare Fusion或Parallels Desktop)允許Fiddler在Mac上的虛擬機中運行。

配置虛擬機:

  1. 安裝Parallels。

  2. 將Windows虛擬機硬件>網絡1類型設置橋接網絡模式。

  3. 重新啟動虛擬機。

配置Fiddler:

  1. 在虛擬機上安裝Fiddler。

  2. 打開提琴手。

  3. 單擊工具>提琴選項>連接

  4. 單擊允許遠程計算機連接的復選框

    允許遠程計算機連接

  5. 重啟Fiddler。

  6. 確保您的防火牆允許傳入Fiddler進程的連接。

配置MAC:

  1. 將鼠標懸停在Fiddler工具欄最右側在線指示器上,以顯示分配給虛擬機的IP地址。

    在線工具提示

  2. 單擊Apple菜單

  3. 單擊系統首選項

  4. 單擊“ 網絡”圖標。

  5. 單擊“ 高級”按鈕。

  6. 單擊“ 代理”選項卡。

  7. 啟用Web代理(HTTP)和安全Web代理(HTTPS)選項以使用端口8888指向虛擬機的IPv4地址。

使用后禁用:

使用Fiddler后,返回OSX系統偏好設置並禁用代理設置

 

十七、從IOS捕獲流量:

配置Fiddler:

  1. 單擊工具>提琴選項>連接

  2. 單擊允許遠程計算機連接的復選框

    允許遠程計算機連接

  3. 重啟Fiddler。

  4. 確保您的防火牆允許傳入Fiddler進程的連接。

  5. 將鼠標懸停在Fiddler工具欄最右側在線指示器上,以顯示分配給Fiddler機器的IP地址。

    在線工具提示

  6. 通過在瀏覽器中導航到http:// FiddlerMachineIP:8888,驗證客戶端iOS設備是否可以訪問Fiddler 該地址應返回Fiddler Echo Service頁面。

  7. 對於iPhone:禁用3g / 4g連接。

設置IOS設備代理:

  1. 點按設置>常規>網絡> Wi-Fi

  2. 點按Wi-Fi網絡的設置。

  3. 點擊HTTP代理部分中手動選項

  4. 在“ 服務器”框中,鍵入Fiddler實例的IP地址或主機名。

  5. 在“ 端口”框中,鍵入Fiddler正在偵聽的端口(通常為8888)。

  6. 確保“身份驗證”滑塊設置為“ 關”

    iOS代理設置

從IOS設備解密HTTPS流量:

  1. 下載Fiddler Certificate Maker插件

  2. 安裝證書制作器插件。

  3. 重啟Fiddler。

  4. 配置安裝Fiddler的設備以信任Fiddler根證書

  5. 在iOS設備上,在瀏覽器中轉到http://ipv4.fiddler:8888 /

  6. Fiddler Echo服務網頁的底部,下載FiddlerRoot證書。

    下載FiddlerRoot證書

  7. 打開FiddlerRoot.cer文件。

  8. 點按“ 安裝”按鈕。

    安裝配置文件

  9. 再次點擊“ 安裝”按鈕。

    警告

在iOS 10及更高版本上,安裝FiddlerRoot證書后,轉到設置 - > 常規 - > 關於 - > 證書信任設置,並手動啟用FiddlerRoot根證書的完全信任。接受對話框,說明這將允許第三方竊聽您的所有通信。

卸載FiddlerRoot證書:

如果您決定卸載根證書:

  1. 點按“ 設置”應用。

  2. 點擊常規

  3. 滾動到個人資料

  4. 點擊DO_NOT_TRUST_FiddlerRoot *個人資料。

  5. 點擊刪除

 

十八、為Android/Google Nexus 7配置Fiddler:

配置Fiddler:

  1. 單擊工具>提琴選項>連接

  2. 確保選中允許遠程計算機連接的復選框。

  3. 如果選中此框,請重新啟動Fiddler。

  4. 將鼠標懸停在Fiddler工具欄最右側在線指示器上,以顯示Fiddler服務器的IP地址。

    在線工具提示

配置Nexus設備:

  1. 從屏幕頂部向下滑動,然后點按“設置”圖標。

  2. 點按Wi-Fi

  3. 點按並按住您當前的Wi-Fi網絡。選擇修改網絡

    修改網絡

  4. 點按“ 顯示高級選項”框。

    顯示高級選項

  5. 點擊代理設置下拉列表,然后選擇手動

    代理設置

  6. 輸入Fiddler服務器的IP地址和端口(通常為8888)。

    IP地址

  7. 點按保存

要驗證此配置,請轉至http://ipv4.fiddler:8888 /Chrome應顯示Fiddler Echo服務網頁,流量應顯示在Fiddler中。

禁用代理:

使用Fiddler后,返回上面的“ 代理設置”屏幕並刪除代理。

解密HTTPS:

  1. Fiddler Echo Service網頁上,單擊FiddlerRoot Certificate鏈接。

    下載FiddlerRoot證書

  2. 如果下載未自動打開,請從頂部向下滑動,然后點按“設置”圖標。

  3. 點擊個人>安全。

  4. 在“ 憑據存儲”下,點擊“ 從存儲中安裝”

    從存儲安裝

  5. 點擊FiddlerRoot.cer文件。

  6. (可選)鍵入證書的名稱。

要驗證此配置,請點擊“ 受信任的憑據”>“用戶”這應該顯示Fiddler證書。

禁用HTTPS解密:

要刪除FiddlerRoot證書,請點擊“ 受信任的憑據”>“用戶”並刪除證書。

 

十九、監控Window Phone:

配置Fiddler:

  1. 在Fiddler服務器(將捕獲流量的機器)上啟動Fiddler。

  2. 單擊工具>提琴選項單擊“ 允許遠程客戶端連接”

    允許遠程客戶端連接

  3. 重啟Fiddler。

  4. 在“Windows安全警報”對話框中,選中所有三個復選框,然后單擊“ 允許訪問”按鈕。

    Windows安全警報

要驗證此配置,請啟用Windows Phone WiFi連接並訪問http:// FIDDLERSERVER:8888,其中FIDDLERSERVER是運行Fiddler的計算機的計算機名稱。這應該顯示Fiddler Echo服務網站。

配置Windows Phone:

  1. 點按設置> WiFi

    設置

  2. 點按有效的WiFi連接。

    無線上網

  3. 代理滑塊滑動

  4. 在“ 服務器/ URL”字段中,鍵入Fiddler服務器的計算機名稱。

  5. 在“ 端口”字段中,鍵入8888

    EditNetwork.png

  6. 點擊復選標記圖標。

解密HTTPS流量:

  1. 配置Fiddler以解密HTTPS流量

  2. 在Windows Phone上,使用Mobile IE請求HTTPS協議URL。

  3. 轉到http:// FIDDLERSERVER:8888 / FiddlerRoot.cer

  4. 點擊標記為Tap的圖標以打開文件fiddlerroot.cer

    打開證書

  5. 點按安裝

    安裝證書

注意:沒有已知資源包含從Windows Phone中刪除安全證書的步驟。這可能會阻止連接到不同的Fiddler代理,后者將使用不同的安全證書。

禁用監控:

Fiddler監控完成后:

  1. 點按設置> WiFi

  2. 點按有效的WiFi連接。

  3. 代理滑塊滑動關閉狀態

也可以看看

沒有Windows Phone 7流量

 

二十、監控PocketPC:

配置Fiddler:

  1. 在Fiddler服務器(安裝Fiddler的計算機)上,在Windows防火牆中打開端口8888

  2. 打開ActiveSync的>連接設置...

  3. 此計算機下連接到:,單擊工作網絡

  4. 開始提琴手。

  5. 點擊工具>選項提琴手...

  6. 確保選中“允許遠程客戶端連接”。

  7. 如果您需要單擊該復選框,請重新啟動Fiddler。

配置PocketPC:

  1. 在PocketPC上,將HTTP代理設置為FIDDLERSERVER:8888,其中FIDDLERSERVER是安裝了Fiddler的計算機的計算機名稱。

  2. 將PocketPC連接到ActiveSync。

 

二十一、配置Fiddler以對CBT保護的服務器進行身份驗證:

  1. 單擊規則>自定義規則

  2. 滾動到OnPeekAtResponseHeaders函數。

  3. 添加以下代碼:

    static function OnPeekAtResponseHeaders(oSession: Session) { // To avoid problems with Channel-Binding-Tokens, this block allows Fiddler  // itself to respond to Authentication challenges from HTTPS Intranet sites.  if (oSession.isHTTPS && (oSession.responseCode == 401) && // Only permit auto-auth for local apps (e.g. not devices or remote PCs)  (oSession.LocalProcessID > 0) && // Only permit auth to sites we trust  (Utilities.isPlainHostName(oSession.hostname) // Replace telerik.com with whatever servers Fiddler should release credentials to. || oSession.host.EndsWith("telerik.com")) ) { // To use creds other than your Windows login credentials,  // set X-AutoAuth to "domain\\username:password"  // Replace default with specific credentials in this format: // domain\\username:password.  oSession["X-AutoAuth"] = "(default)"; oSession["ui-backcolor"] = "pink"; } //... function continues
    • 將“telerik.com”替換為Fiddler應該向其發布憑據的任何服務器。默認情況下,Fiddler將向任何Intranet站點(主機名中沒有點的站點)發布憑據。

    • 將“default”替換為此格式的特定憑據:

      域\用戶名:密碼

    • 如果指定“(默認)”,Fiddler將嘗試使用其運行的任何用戶帳戶的登錄憑據。

 

二十二、從IE或.NET監控到localhost的流量:

要監控從IE8或更低版本或.NET Framework 發送到http:// localhosthttp://127.0.0.1的流量

  • 使用您的計算機名稱作為主機名而不是Localhost127.0.0.1

    例如,而不是

     http://localhost:8081/mytestpage.aspx

    去:

     http://machinename:8081/mytestpage.aspx
  • 使用以下地址之一:

    - 使用IPv4適配器(推薦用於Visual Studio測試網絡服務器,代號:Cassini):

     http://ipv4.fiddler

    - 要使用IPv6適配器:

     http://ipv6.fiddler

    - 在Host標頭中使用localhost:

     http://localhost.fiddler
  • 單擊規則>自定義規則...並將此代碼添加到規則文件中:

    static function OnBeforeRequest(oSession:Fiddler.Session){ if (oSession.HostnameIs("MYAPP")) { oSession.host = "127.0.0.1:8081"; } }

    現在,http:// myapp將充當127.0.0.1:8081的別名

 

二十三、繞過上游代理:

要繞過上游代理以獲取對特定域的所有請求(例如,模擬IE代理繞過列表),請將一條規則添加到Fiddler,以便OnBeforeRequest函數,如下所示:    if (oSession.HostnameIs("www.example.com")){

 oSession.bypassGateway = true; }


二十四、從FireFOX瀏覽器中捕獲HTTPS流量:
配置Fiddler:
  1. 單擊工具>提琴選項

  2. 單擊HTTPS選項卡。確保選中Decrypt HTTPS traffic復選框。

  3. 單擊“ 將提琴手根證書導出到桌面”按鈕。

    將根證書導出到桌面

配置FireFox:

  • 如果FiddlerHook啟用,在Firefox中點擊工具>監控與小提琴手>信托FiddlerRoot證書......

FiddlerHook菜單選項

  • 或者,手動導入證書:

    1. 單擊工具>選項...>高級>加密>查看證書>授權>導入

      進口證書

    2. 從桌面選擇FiddlerRoot.cer文件。

    3. 單擊“ 信任此CA”旁邊的復選框以標識網站。

    信任此CA以識別網站

 

二十五、故障排除:

1、問題:不受信任的證書警告:

使用Fiddler時,瀏覽器可能會顯示不受信任的證書警告,例如Internet Explorer 此網站的安全證書存在問題。或Chrome的網站的安全證書不受信任!

解:

配置Windows客戶端以信任Fiddler根證書

 

2、問題:無法配置客戶端以使用代理服務器:

客戶端設備,應用程序或平台無法使用像Fiddler這樣的代理服務器。這樣可以防止從應用程序中捕獲Web流量。

解:

將Fiddler配置為反向代理

 

3、問題:重復401錯誤和Windows安全提示:

連接到受通道綁定令牌(CBT)保護的服務器時,服務器返回一系列401錯誤,瀏覽器會不斷提示輸入憑據。

解:

配置Fiddler以對受CBT保護的服務器進行身份驗證

 

4、問題:IIS Express 出現意外的400錯誤請求錯誤:

從IIS Express實例請求http://ipv4.fiddler:2468時,服務器返回以下意外錯誤消息:

 HTTP/1.1 400 Bad Request Content-Type: text/html;charset=us-ascii Server: Microsoft-HTTPAPI/2.0 Date: Wed, 22 Aug 2012 19:59:52 GMT Connection: close Content-Length: 334 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""https://www.w3.org/TR/html4/strict.dtd"> <HTML><HEAD><TITLE>Bad Request</TITLE> <META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD> <BODY><h2>Bad Request - Invalid Hostname</h2> <hr><p>HTTP Error 400. The request hostname is invalid.</p></BODY></HTML>

解:

http://localhost.fiddler:2468替換http://ipv.fiddler :2468

 

5、問題:Windows Phone不與Fiddler交換網絡流量:

配置Windows Phone以將Fiddler用作代理后,來自Windows Phone設備的請求不會返回資源或顯示在Fiddler會話列表中。

解決方案:創建IPSEC邊界值技術機異常:

如果Fiddler服務器(運行Fiddler的計算機)位於啟用了IPSEC的網絡上,請創建IPSEC邊界計算機例外。聯系網絡管理員以創建此例外。

 

6、問題:使用WinHTTP的office客戶端在運行Fiddler時無法正確進行身邊驗證:

解決方案1:

配置Fiddler以對服務器進行身份驗證

解決方案2:

使用REGEDIT 更改AuthFowardServerList

 

7、問題:在Fiddler運行的本地計算機上運行的網站拒絕憑據

解決方案1:

配置Fiddler以對服務器進行身份驗證

解決方案2:

創建可在NTLM身份驗證請求中引用的本地安全機構主機名

解決方案3:

禁用身份驗證環回檢查

 

8、已啟用解密的HTTPS鏈接超時:

問題:當Fiddler配置為解密HTTPS流量時,客戶端應用程序無法訪問HTTPS站點。

在Windows Vista或更高版本上會出現此問題。

解決方案1:自定義Fiddler規則以強制進行SSLv3握手

  1. 單擊規則>自定義規則

  2. 將此代碼添加到OnBeforeRequest方法(其中“HTTPSsite.com”是目標服務器的主機名):

    if (oSession.HTTPMethodIs("CONNECT") && oSession.HostnameIs("HTTPSSite.com")) { oSession["x-OverrideSslProtocols"] = "ssl3"; FiddlerApplication.Log.LogString("Legacy compat applied for inbound request to HTTPSSite.com"); }

解決方案2:修改.NET應用程序以強制進行SSLv3握手

在.NET應用程序中使用此代碼:

 ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3;

也可以看看

“你如何讓System.Web.HttpWebRequest對象使用SSL 2.0?” 在stackoverflow.com

 

9、問題:Fiddler使用MS防火牆隨即分離ISA 2004:

Microsoft ISA 2004的Microsoft防火牆客戶端可以選擇自動重新配置Internet Explorer設置。不幸的是,此設置將導致Internet Explorer隨機時間與Fiddler分離。

解決方案:在Microsoft防火牆客戶端中禁用Web瀏覽器自動配置

  • 如果防火牆客戶端 系統托盤中有防火牆客戶端圖標

    1. 右鍵單擊系統托盤中的“防火牆客戶端”圖標。
    2. 單擊上下文菜單中的配置....
  • 如果系統托盤中沒有防火牆客戶端圖標:

    1. 打開“ 開始”菜單
    2. 在“開始”菜單搜索框中鍵入“防火牆”。
    3. 點擊防火牆客戶端管理圖標

在“Web瀏覽器”選項卡上,取消選中“ 啟用Web瀏覽器自動配置”復選框。

 

10、問題:沒有使用ProxySettingsPerUser=0組測試設置捕獲流量:

您的系統或域管理員已將組策略設置ProxySettingsPerUser設置0這意味着,而不是默認的Windows行為(每個用戶都有自己的代理設置),而是所有用戶帳戶共享一組代理設置。在這種情況下,內部存在一個名為ProxySettingsPerUser的值:

 HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ 

解決方案:以管理員身份運行Fiddler

此機器范圍的代理設置只能通過作為管理員運行的代碼進行更改,因此必須啟動Fiddler Elevated

  1. 右鍵單擊“開始”菜單中Fiddler圖標。
  2. 選擇以管理員身份運行

這將調整代理設置。

如果您無法以管理員身份運行Fiddler(例如,因為您不是管理員),則需要請求您的系統或域管理員禁用此策略:

 HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ProxySettingsPerUser is 0.

此策略設置不會影響未配置為使用系統代理設置的客戶端(例如,具有手動代理配置的Firefox)。

 

11、問題:沒有使用ProxySettingsPerUser=0組策略設置捕獲流量:

您的系統或域管理員已將組策略設置ProxySettingsPerUser設置0這意味着,而不是默認的Windows行為(每個用戶都有自己的代理設置),而是所有用戶帳戶共享一組代理設置。在這種情況下,內部存在一個名為ProxySettingsPerUser的值:

 HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ 

解決方案:以管理員身份運行Fiddler

此機器范圍的代理設置只能通過作為管理員運行的代碼進行更改,因此必須啟動Fiddler Elevated

  1. 右鍵單擊“開始”菜單中Fiddler圖標。
  2. 選擇以管理員身份運行

這將調整代理設置。

如果您無法以管理員身份運行Fiddler(例如,因為您不是管理員),則需要請求您的系統或域管理員禁用此策略:

 HKLM\SOFTWARE\Policies\Microsoft\Windows\CurrentVersion\Internet Settings\ProxySettingsPerUser is 0.

此策略設置不會影響未配置為使用系統代理設置的客戶端(例如,具有手動代理配置的Firefox)。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM