質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
IPv4

IPv4(Internet Protocol version 4)は、インターネットプロトコルの一つ。インターネットに繋がったコンピューターや機器を識別するためのIPアドレスを32ビット表記で表わします。しかしIPv4は、限界があるため、IPv6が次世代プロトコルとして注目されています。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

Q&A

解決済

1回答

7448閲覧

ローカル環境で開発中のサイト(localhost)を自分のスマホ(iPhone)で見る方法

digitalhimiko

総合スコア142

IPv4

IPv4(Internet Protocol version 4)は、インターネットプロトコルの一つ。インターネットに繋がったコンピューターや機器を識別するためのIPアドレスを32ビット表記で表わします。しかしIPv4は、限界があるため、IPv6が次世代プロトコルとして注目されています。

HTTP

HTTP(Hypertext Transfer Protocol)とはweb上でHTML等のコンテンツを交換するために使われるアプリケーション層の通信プロトコルです。

MacOS(OSX)

MacOSとは、Appleの開発していたGUI(グラフィカルユーザーインターフェース)を採用したオペレーションシステム(OS)です。Macintoshと共に、市場に出てGUIの普及に大きく貢献しました。

ネットワーク

ネットワークとは、複数のコンピューター間を接続する技術です。インターネットが最も主流なネットワークの形態で、TCP/IP・HTTP・DNSなどの様々なプロトコルや、ルータやサーバーなどの様々な機器の上に成り立っています。

iPhone

iPhoneとは、アップル社が開発・販売しているスマートフォンです。 同社のデジタルオーディオプレーヤーiPodの機能、電話機能、インターネットやメールなどのWeb通信機能の3つをドッキングした機器です。

0グッド

0クリップ

投稿2020/03/29 06:25

質問したいこと

ローカル環境でwebサイト構築をしています。使用言語・FWはpython/Djangoで

python

1python manage.py runserver

をして、http://localhost/mywebsiteと打ち込むと自分が構築しているサイトがMacで見ることが出来ます。
(URLのバーにはlocalhost:8000/mywebsite/と表記されています。)

そのサイトのレイアウトをiPhoneで確認するために下記のサイト(stackover flow,Qiita)を参考にやってみたのですが上手くいきません。
https://stackoverflow.com/questions/9304058/how-to-view-localhost-on-my-ipod-touch
https://qiita.com/sabineko/items/c4725c649c57a0432104
https://neos21.hatenablog.com/entry/2018/11/03/080000

試したこと

(1)Macのシステム環境設定→コンピュータ名からコンピュータ名(mycomputer)を確認し、iphone上で下記にアクセスしてみた。
http://mycomputer.local:8000/mywebsite
→結果:アクセス出来ず「ページが開けません。サーバーが応答を停止しています。」と出た。
(2)MacとiPhoneを同じwifiに接続し、mac側でシステム環境設定→ネットワークからipアドレスを確認(x.x.x.x)、iphoneで下記にアクセスした
http://x.x.x.x:8000/mywebsite
→結果:アクセス出来ず「ページが開けません。サーバーが応答を停止しています。」と出た。
(3)上記の(2)に加え、iphone側の設定でwifiのiマーク→HTTPプロキシ→手動
でサーバーにmacのipアドレス、ポートに8000を記入し、再度(2)と同様のurlにアクセス試みるもアクセス出来ず。
→補足:iphoneの設定にあるipアドレスとmacの設定に載っているipアドレスが同じwifiに接続しているのに若干違う、(3)のHTTPプロキシの設定をするとこれまでと違い普通のウェブサイトにもiphoneがアクセス出来なくなる。

以上、解決策、もしくはそれに繋がる解説サイトを教えていただけると助かります。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

shiketa

2020/03/29 06:31

Mac上でx.x.x.x:8080にはアクセスできますか。MacでFirewallが設定されているのではありませんか?そして8080ポートが閉じているのではないでしょうか。firewallの設定を確認してみましたか?
digitalhimiko

2020/03/29 06:39

追記・修正依頼ありがとうございます! firewallは一時的に無効にしています。 ただ、Mac上でx.x.x.x:8080をurlに打ち込んでアクセスしようとすると「このサイトにアクセスできませんx.x.x.x で接続が拒否されました。」と表示されます。(これはx.x.x.x:8000とした場合も同様) システム環境設定→ネットワーク→プロキシを念のため確認したところプロキシサーバは使用していません。
shiketa

2020/03/29 06:48

8000でしたね。失礼しました。 x.x.x.x:8000にアクセスして「このサイトにアクセスできませんx.x.x.x で接続が拒否されました。」ですか。 その状態では外部(iPhone)からは接続できないでしょうね。サーバが起動できていないのかもしれませんね。これ以上は情報不足(ソースなど)なので...。
hoshi-takanori

2020/03/29 18:03

無線LANルーターのネットワーク分離機能(プライバシーセパレーターとも言う)をご確認ください。 あと、x.x.x.x がプライベートアドレス(192.168.x.x など)なら、隠す必要はないと思うので、ちゃんと書いてくれた方が分かりやすいです。(「若干違う」と言われても意味がわかりません。)
guest

回答1

0

ベストアンサー

もしかしてデフォルトでは localhost しか listen してないのかも。以下のコマンドをお試しください。
参考: python - How to access the local Django webserver from outside world - Stack Overflow

python manage.py runserver 0.0.0.0:8000

ちなみに、Xcode が入ってるなら iOS Simulator で動作確認するという方法もあります。これなら localhost でいけるはず。
参考: Simulatorを使ってiOS版SafariのWebページの挙動をデバッグする - Qiita

投稿2020/03/29 22:10

編集2020/03/29 22:20
hoshi-takanori

総合スコア7901

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問