Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
86
Help us understand the problem. What is going on with this article?
@yamshta

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

More than 5 years have passed since last update.

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上のローカルサーバーへ接続できると思います。

86
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
yamshta
lclco
業界最大手高速バス料金比較サイト「バス比較なび」やLCCなど飛行機との比較ができる「格安移動」を運営

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
86
Help us understand the problem. What is going on with this article?