Macターミナル上でスマホアプリのHttpリクエストをとりあえず確認する

Mac標準にインストールされているApacheでProxyを立てて、スマホのネットワーク設定でProxyを経由するようにする。

Apache側の設定
$ sudo vim /private/etc/apache2/other/sample-proxy.conf
<IfModule mod_proxy.c>
    ProxyRequests On
    ProxyVia On
    <Proxy *>
        Order deny,allow
        Deny from all 
        Allow from "LANネットワーク上のスマホのIP・マスク。allでも動くが…:例:10.0.1" 
    </Proxy>
</IfModule>
:wq

$ sudo apachectl restart
MacIPアドレス確認
$ ifconfig | grep inet
inet 192.********** ← inetの、localhostでない部分がMac自体のIPアドレス。
スマホの設定
iOSAndroid(実機)

設定→Wi-Fi→で接続中のネットワークを選択する。 下にスクロールしてHTTPプロキシを「手動」選択。 サーバは上記で調べたIPアドレスを記入。 ポートは80。 認証は今回設定していないので無視。 設定したらWi-Fi再起動。

iOSエミュレータ

Mac側の設定から、「Network」を開き、Advancedボタンを押し、「Proxies」まで行く。 「Select a protocol to configure」から「Web Proxy」を選択し、 localhost:80 と入力。 入力したらApplyしてエミュレータ再起動。

Log見る
$ tail -f /var/log/apache2/access_log | grep なにか
使い終わったらStopはちゃんとしましょう。