web-dev-qa-db-ja.com

FiddlerにローカルトラフィックをキャプチャしてIIS

最近、最新のFiddler(Fiddler4)をインストールしましたが、ローカルトラフィックをキャプチャするために何も試みていません。両方ともIISで実行されているMVCWebApiアプリに接続しているMVCアプリケーションがあります。これが、私が試したことです。

  • Fiddlerオプション>接続>すべての接続を監視してPACスクリプトを使用する
  • 次のURLを使用するようにWebClientC#呼び出しを変更しましたが、成功しませんでした:
  • IISの「デフォルトのWebサイト」を、ローカルアカウントを使用する新しいAppPoolで実行するように変更し、管理者としてFiddlerを実行しました
  • 追加<system.net> <defaultProxy> <proxy bypassonlocal="False" usesystemdefault="True" /> </defaultProxy> </system.net>MVCアプリのweb.configに。

何もうまくいきませんでした、私は何を試すべきかわかりません。どんなアドバイスも大歓迎です。ありがとう、ショーン

12
pharophy

Fiddlerをリバースプロキシとして設定する必要があることが判明しました( http://fiddler2.com/documentation/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy )。 Fiddler2からFiddler4にアップグレードする前に、これを行う必要がなかった理由がよくわかりません。以前はhttp://ipv4.localhost/app-nameを使用するだけで、すべて正常に機能していました。ただし、Fiddler4で機能させるために、リバースプロキシを設定し、すべての要求をhttp://ipv4.localhost/app-nameからhttp://machinename:8888/app-nameに変更しました。これで、アプリ間の通信を聞くことができます。 Fiddler2でこれを行う必要がなかった理由はありますが、Fiddler4にアップグレードした後に行う必要がありますか?

7
pharophy

あなたがOPでこれについて言及したことは知っていますが、これは私にとってはうまくいき、非常に簡単だったので、他の人が同じ問題に遭遇し、リバースを設定する手間をかけたくない場合に備えて共有したいと思いました必要がない場合はプロキシします。


Fiddlerはデフォルトでログインしたユーザーのトラフィックのみをキャプチャするように見えるため、トラフィックを検査したいIISアプリケーションプールを自分のIDで実行するように変更するだけでこれを機能させることができました。ユーザーがIISに必要なすべてのアクセス許可を持っていることを確認してください。私は管理者なので、これは私にとって問題ではありませんでした。そしてもちろん、完了したらIISアプリケーションプールIDを元に戻すことを忘れないでください。

もちろん、他のオプションは、代わりにIISアプリケーションプールが実行されているユーザーとしてログインし(Network Serviceのようなサービスアカウントでない場合)、そのようにログインしている間にFiddlerを実行することです。他のユーザー。

3
deadlydog

Webブラウザー以外のトラフィックをキャプチャするために私が知っている最も簡単で信頼性の高いソリューションは、Web要求のプロキシとしてFiddlerのポートを明示的に指定することです。コードが作成しているリクエストに応じて、次のようになります。

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

注:「キャプチャ」と「すべてのプロセス」(Fiddlerのステータスバーに表示)でFiddlerを実行することを忘れないでください

1
Alexei Levenkov

同じ問題が発生しました。 Web.configを変更して修正

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

http://machinename./page を使用してみてください

つまり...マシン名の末尾にピリオドを付けて参照してみてください。

0
Rahul Soni

次のように、hostsファイル(c:\ windows\system32\drivers\etc\hosts)にレコードを追加してみてください。

127.0.0.1   mysite.local

次に、一致するようにIISのWebサイトにバインディングが必要になります。

次に、 http://mysite.local/ を使用します

0
Joe Enos