IPhoneなどのデバイスをWLAN経由でMacのローカルホストサーバーに接続するにはどうすればよいですか?
私のMacでは、http://localhost:1337
でSafariが正常に開くページを提供する「Hello World」HTTP Node.js サーバーを実行しています。そして、ターミナルでipconfig getifaddr en1
を実行すると192.168.1.9
が出力されます。
ただし、iPhoneとMacの両方のSafariは、http://192.168.1.9:1337
を開こうとすると「Safariはサーバーに接続できません」と表示します。
これには ポートフォワーディング を含めるべきではないと思います。なぜなら、HTTPサーバーを公開するのではなく、非公開にするだけだからです。
関連する:
同じ問題がありました。 MacでWI-FIをオフにしてから再度オンにして、問題を解決しました。 [設定]> [Wi-Fiをオフにする]をクリックします。
IPhoneでSafariにアクセスし、ホスト名またはIPアドレスを入力してテストしました。例:http://<name>.local
またはhttp://10.0.1.5
http://name.local:1337
を使用してのみiphoneにアクセスできました。 「.local」を追加する必要があります。コンピューター名は、システム環境設定/共有/「コンピューター名」にあります。
サーバーに192.168.1.9:1337
ではなくlocalhost:1337
、つまり127.0.0.1:1337
でリッスンさせます。
インターネット共有を有効にしてみてください:
システム環境設定->共有を開きます。インターネット共有をオンにしてオンにします。操作を確認するプロンプトが表示されたら、[OK]を選択します。 iPhoneがUSBを使用して接続されている場合、右側の「接続の共有」リストでiPhone USBがチェックされます。
この後、wifiでmacs IPを使用してローカルサーバーにアクセスしてみてください。
私の問題は同じでしたが、解決策はファイアウォール設定の変更に関係していました。ノードは着信トラフィックをブロックするように設定されていることが判明しました。電話からローカルホストサーバーにアクセスできたので、何かが起きていることを知っていました。
システム環境設定->セキュリティとプライバシー->ファイアウォール)-> ファイアウォールオプション、nodeが見つかるまで下にスクロールし、ノードの設定が着信接続を許可。
設定を変更した後、 http://192.168.1.11:30 に移動して、Macで実行されているlocalhostサーバー(ポート3000)に到達できました。
MacOS Sierraユーザーは、System Preferences > Sharing
に移動し、[コンピューター名]テキスト入力の下を確認することにより、自動生成されたバニティURLを見つけることができます。アクセスするには、コンピューターと同じWi-Fi接続を介してiPhoneでこのURLとポート番号(例:your-name.local:8000)を入力します。
電話とMacの両方が同じwifiに接続されていることを確認し、http://<machine-name>.local
コンピューターの名前、たとえばhttp://mymac:1337/
を使用することをお勧めします。構成を必要とせずに完璧に機能し、DHCPによるIPアドレスの変更を気にする必要がありません。
投稿したとおり、moeamayaの回答に従いましたが、Sitesディレクトリで自分の作品を見るために少し変更する必要がありました。
http://[name].local.~[username]/
[name]はすでに述べたとおりです(システム環境設定/共有/「コンピューター名」)
[ユーザー名]は次の場所にあります。
/etc/Apache2/users/username.conf
お役に立てれば!
このページのすべてを試してみましたが、http://<name>.local:<PORT>
は、Safariを終了して再起動した後、iPhoneでのみ機能しました...
IPhoneをUSB経由でMacに接続します。
ネットワークユーティリティに移動します(cmd + spaceおよび「ネットワークユーティリティ」と入力します)
「情報」タブに移動します
「Wi-Fi」というドロップダウンメニューをクリックし、次に示すように「iPhone USB」を選択します。
「xxx.xxx.xx.xx」などのIPアドレスがあります。 iPhoneでSafariブラウザーを開き、IP_address:port_numberを入力します
例:169.254.72.86:3000
[注:[IPアドレス]フィールドが空白の場合、iPhoneがUSB経由で接続されていることを確認し、ネットワークユーティリティを終了し、もう一度開いてIPアドレスを確認します。
ネットワーク設定に表示されているIPを常に使用してください。場所を変更し、別のワイヤレス接続を使用すると変更されます。
たとえば、私の場合、現在は10.0.0.5です