hostsファイルで設定したURLに Android でアクセスする方法(for macOS)


Androidの検証をする為に、SquidMan というツールを使ってプロキシサーバーを立てました。その設定方法を備忘録として残しておきます。

プロキシとは

自分のパソコンやスマホに変わってWebサイトにアクセスしてくれるサーバーのことです。プロキシ(proxy)は「代理」という意味で、ブラウザの代理人のような存在です。

参考サイト

SquidManの設定

SquidMan のダウンロード

SquidMan公式ダウンロードページ

自分のMacのOSバージョンを確認し、SquidManをダウンロードします。


OS確認①

OS確認②

SquidManダウンロードページ


SquidMan の設定


General の設定

初期設定のままでOKです。


General


Clients の設定

"192.168.1.0/24" を設定しました。
特定のネットワークに所属する端末がプロキシサーバーにアクセスすることを許可する場合に設定するIPアドレスのようです。



Template の設定


localhost上で動作するwebサービスへのアクセスを許可する必要があるので下記の制限をコメントアウトします。コメントアウトは記述の先頭に「# 」をつけます。

コメントアウトした記述の上に書いてある文の直訳をgoogle先生に聞いてみました。
「外部ユーザーからプロキシホスト上で実行されているWebアプリケーションを保護する」
という内容だそうです。

# protect web apps running on the proxy host from external users
# http_access deny to_localhost

私の場合は、Proxy経由のリクエストの一部を別のIPに振り分けたいのでhostsファイルを参照するようにしました。hostsファイルの場所を Template の一番下に追記します。

# hosts file
hosts_file /etc/hosts


参考サイト:iPhone,Androidの実機から開発用localhost等にProxy経由でアクセスさせてテストする方法 | Qiita

Template の書き換えができたら、Save します。

Start Squid


Start Squid してプロキシサーバーを立ち上げます。


※設定画面を再度開きたい場合は、「command」 + 「, 」で表示させることができます。


Android にプロキシ設定


設定画面を開きます。


Wi-Fi をタップ

Wi-Fi 設定を開きます。


ネットワーク設定を変更 をタップ

PC が接続しているWiFiと同じWi-Fiに接続し、接続したWi-Fi名を長押しします。
長押しすると「ネットワークを変更」ボタンが出現します。


詳細設定項目をタップ

詳細設定項目を開きます。


プロキシ 設定を「手動」にします。


プロキシ 、ポートを設定します。「インターネット非接続時も有効」という項目はあればチェックを入れておきます。


プロキシはPCの「システム環境設定」→「ネットワーク」に書いてあるIPアドレスを入力します。



ポートはSquidManで設定した HTTP Port を入力します。デフォルト設定のままなら「8080」です。

最後に、Android で接続したかったURLにアクセスして、繋がったら成功です。


投稿 2018/06/15

関連記事