MacとiPhoneでlocalhost接続を行う方法(iOS9)

  • 64
    いいね
  • 1
    コメント
この記事は最終更新日から1年以上が経過しています。

Web開発やアプリ開発をする上で、実機でローカルホスト接続を行いたい場面があると思います。

実行環境

・iOS9
・OS X El Capitan 10.11.3
・Wi-fi接続

今回の実行条件としてiPhoneとMacが同じネットワーク上に接続していることが必須となります。

Lightningケーブルで接続する必要はありません。

Macのローカルホスト名を確認

まずはじめに、接続先となるMacのローカルホスト名を確認します。

ローカルホスト名は「システム環境設定」から「共有」を選択し、コンピュータ名が書いてあるテキストボックスの下に書いてあります。

ios-osx-local-1-min.png

「**.local」と書いてある文字列がそうです。右側の編集ボタンを押して違う名前に変更することも可能です。

Safariからローカルサーバーへ接続

ローカルホスト名が確認できたらMac上のブラウザからhttp://localhostと接続するように、localhostの部分をMacのローカルホスト名に置き換えてhttp://**.localと入力して接続します。

ios-osx-local-2-min.jpg

これでiPhoneからローカルホスト接続ができると思います。もし接続がうまくいかない場合は、同じネットワークに接続しているか、 またはポート番号を設定していて間違っていないかを確認しましょう。

アプリからローカルサーバーへ接続

ここまででiPhone上のブラウザからローカルサーバーへ接続するのは可能になったわけですが、Xcodeで作成したアプリから接続するには あとひとつ設定を行わなければいけません。

なぜなら、作成したアプリの設定では、App Transport Securityの影響でhttp接続の**.localのローカルサーバーとは通信できないからです。

そこで設定を変更する為に、作成したアプリのinfo.plistを開いて以下の項目を記入します。

<key>NSAppTransportSecurity</key> 
<dict> 
 <key>NSAllowsArbitraryLoads</key>
 <true/> 
</dict>

Xcodeのリスト表示上では、このように表示されれば設定は完了です。

ios-osx-local-3.png

以上で、iPhoneアプリからでもMac上のローカルサーバーへ接続できると思います。