Macのインターネット共有を使ってiPadなどをネットワーク接続したときに、Mac側のhostsで定義されたホスト名でアクセスしたい時ってありますよね。

たとえば、Macと同じネットワークに所属しているWebサーバにホスト名が指定されている場合とか。

そういう場合、ApacheのProxy機能を使います。

前提

  • インターネット共有の設定が終わっている。(インターネットには接続ができている)
  • Macのhostsにて、アクセスしたいホスト名が定義されている。

Apacheの起動

Macには標準でApacheが入っているようです。Proxy機能を使うため、httpd.confを編集した後、起動します。

httpd.confを開く

sudo vi /etc/apache2/httpd.conf

httpd.confに下記の内容を追加します。

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

Apacheを起動します。

sudo /usr/sbin/apachectl start

接続先の設定

接続先側での設定です。iOSでの説明になります。

Wi-fi -> 対象のWi-Fiを選択

ネットワークの設定画面で、HTTPプロキシを手動にし、

  • サーバ名をMacのIPアドレス
  • ポートを8080

に設定します。

これでMacで定義した名前でアクセスすることができます。

参考