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プロキシ」をオフにしてください。
コメント