blogですかい

仕事、プライベートで学んだことなどを発信し、その内容がたとえ少数でも誰かの役に立ったらなら、それはとっても嬉しいなって

FiddlerをMacで使う方法

Fiddler とは

FiddlerはMicrosoftが無料で配布しているWebProxyで、通過するHTTPの通信を覗き見したり、特定のリクエストに対してローカルファイルを返すようにしたり、いろいろゴニョゴニョできます。

+---------+  HTTP  +---------+  HTTP  +-----------+
| browser | <----> | Fiddler | <----> | WebServer |
+---------+        +---------+        +-----------+
                        ↑
            ここでいろいろゴニョゴニョ

Fiddlerのインストール

Webのデバッグにはとても便利なツールなのですが、Microsoft謹製のツールで、Windows版しかありません。

なのでWindowsが必要です。何かしらのVM(VirtualBox等)を用意して、XP以降のWindowsをインストールします。VMが嫌なら実機でも良いです。いずれにせよ、Windowsは必須です。

Windowsのインストールが完了したら、こちらからFiddlerをダウンロードし、インストールします。

Fiddlerの設定

HTTPSデコードの設定(必要であれば)

Tools -> Fiddler Options の HTTPS タブを開きます。 「Capture HTTPS CONNECTs」にチェック、「Decrypt HTTPS traffic」にチェックを入れれば、FiddlerにてHTTPSを復号するようになります。

f:id:oh-sky:20130605085828p:plain

このままではHTTPSの通信をする際にブラウザで警告が出るので、Fiddlerのルート証明書をブラウザにインストールする必要があります。 「Export Root Certificate to Desktop」をクリックすると、デスクトップに「FiddlerRoot.cer」という証明書ファイルが作成されますので、Fiddlerを使用するブラウザにインストールします。

Proxyの設定

Tools -> Fiddler Options の Connections タブを開きます。 「Allow remote computers to connect」にチェックを入れ、OKを押下した後、Fiddlerを再起動すると、Fiddlerは別マシンからの通信もProxyするようになります。

f:id:oh-sky:20130605085847p:plain

Fiddler側の準備ができたら、ブラウザのProxy設定をします。 画像はFirefoxでの設定例です。proxyのアドレスにVMのIPアドレスを指定し、ポート番号も合わせます。

f:id:oh-sky:20130605085902p:plain

以上でMac上で動くブラウザの通信をFiddlerでキャプチャできるようになります。