MacとiPhoneにHosts設定をする

構築・開発スマホ

PCでのhosts設定は、開発者であれば一度は行ったことがあるのではないかと思います。
ですが、最近ではレスポンシブやスマホ最適化されたサイトも多く、iPhoneとかで確認したいことってありますよね。

今回は、脱獄なしでiPhone実機でもhosts変更したサーバが見れるようにしたいと思います。
※前提として、MacとiPhoneは、同じネットワークに繋がっている必要があります。

スポンサーリンク

1. MacでHosts設定を行う

ターミナル.app を起動して、

$ sudo vi /private/etc/hosts

と入力します。

viの使い方は割愛します。
操作方法については、「vi 使い方」などでググってください。

最後の行に確認したいサーバのhosts情報を入力します。
見たいサーバのIP 半角スペース ドメイン名
例)127.0.0.1 localhost

コマンド操作が不慣れという方は、GUIで操作できるHOSTSというソフトを入れると楽だと思います。
Macのhosts編集はHostsが良さげ【Mac】

Mac側のHosts設定は以上となります。
ブラウザで、設定したドメインにアクセスして、閲覧サーバが変わっていることを確認してください。

2. Apacheの設定を変更して、再起動します。

まずApacheの設定ファイルを修正します。
※Webサーバの設定を変更するので、できればコピーしてから編集することをおすすめします。

$ sudo vi /etc/apache2/httpd.conf

mod_proxyを検索して、 頭に # がついていれば削除して、有効にしてください。

LoadModule proxy_html_module libexec/apache2/mod_proxy_html.so
LoadModule proxy_module libexec/apache2/mod_proxy.so
LoadModule proxy_connect_module libexec/apache2/mod_proxy_connect.so
LoadModule proxy_http_module libexec/apache2/mod_proxy_http.so

<IfModule proxy_html_module>
  Include /private/etc/apache2/extra/proxy-html.conf
</IfModule>

次にproxyの設定ファイルを開いて、

$ sudo vi /etc/apache2/extra/proxy-html.conf

ファイルの最後に下記コードを追加してください。

<IfModule mod_proxy.c>
    ProxyRequests On
    ProxyVia On
    Listen 8080
    <Proxy *>
        Order deny,allow
        Deny from all
        Allow from all
    </Proxy>
</IfModule>

最後に設定を有効にするために、Apacheを再起動してください。

$ sudo apachectl restart

3. iPhone側の設定

まず、PCで使用しているプライベートIPを確認しておいてください。
システム環境設定 → ネットワーク にあります。

Wi-Fi設定画面を開きます。
設定 → Wi-Fi

設定画面の下方に「HTTPプロキシ」という項目があるので、「手動」に切り替えます。
「サーバ」に先ほど確認したPCで使用しているIPを入力します。
「ポート」は、2で設定したものになります。

サーバ:192.168.xxx.xxx
ポート:8080

これで、設定は以上となります。
iPhone実機で設定したドメインにアクセスして、閲覧サーバが変わっていることを確認してください。

hosts情報を戻したい場合は、3で設定した「HTTPプロキシ」をオフにしてください。

コメント

スポンサーリンク
タイトルとURLをコピーしました