2つのデバイスが同じネットワークにある場合は接続できますが、たとえば、Androidで4Gを使用し、Wi-Fiをオフにして接続しようとするとhttp://computer-ip-address
、ハングし、最終的にはカウントが接続されないというエラーが発生します。ApacheサーバーはローカルMacでホストされており、ファイアウォールを一時的に無効にしました。別のネットワークを使用してデバイスを取得し、ローカルネットワーク上のApacheサーバーに接続する方法についてのアイデアはありますか?
4 に答える
ポート80を外部からMacに転送するようにルーターを構成する必要があります。
次に、http://your-public-Internet-ip
携帯電話で開いて、ローカルWebサーバーに効果的にアクセスできます。
IPアドレスを覚えたくない場合、特に外出中の場合、答えはdyndnsまたはhttp://www.no-ip.com/services/managed_dns/free_dynamic_dns.htmlなどの無料の代替手段です。
http://yourname.service.com
このようなサービスを利用すると、携帯電話に入ることができます。このサービスに常に現在のIPを通知するようにルーターを構成するか(サポートされているサービスについてルーターを確認してください)、これを処理する小さなプログラムをMacで実行する必要があります。
TCP 80(SSLを使用している場合はTCP 443)をWebサーバーのIPアドレスに転送するには、ルーターでポート転送を有効にする必要があります。
完了すると、ルーターのパブリックIPアドレスを介してサイトにアクセスできるようになります。
WebサーバーがDHCPによって提供される動的アドレスを使用していることに注意してください。IPが変更され、機能しなくなる可能性があります。これを停止するには、Webサーバーに静的IPアドレスを指定することをお勧めします。
おそらくルーターにも動的IPがあるので、ISPに静的IPを要求するか、動的DNSサービスにサインアップすることができます。
ルーターのモデルを投稿すると、ポート転送の設定に関するより具体的な手順を提供できる場合があります。
httpd.confがポートリッスンで設定されていることを願っています
Listen 80
また、LANからのみサイトにアクセスできます。そうでない場合、サーバーは、インターネット4g接続を介したプライベートアドレスではなく、パブリックIPアドレスから到達可能である必要があります。つまり、異なるネットワークを意味します。
ボーナスポイント、外部アドレスからサーバーに到達しようとした場合、ルーターでポートフォワーディングを構成しましたか?
localhost
4Gネットワークを使用してすぐに接続できる場合は、インターネット上の誰もが同じことを実行できる可能性があります。質問への回答には2つの要素があることを理解することが重要です。
- インターネットからのHTTPアクセス(ポート80またはいずれか)を保護します。あなたはおそらくあなたのローカルネットワークへの広い扉を開きたくないでしょう。
- クライアント(この場合は電話)からローカルコンピューター(この場合はMac)へのアドレス指定を構成します。後者にパブリックIPアドレスがない場合は、代わりにルーターにアクセスするようにクライアントを構成し、それに応じてルーターを転送するように構成する必要があります。
これは主にシステム構成作業であることを考えると、 Serverfaultが満足のいく答えを見つけるためのより良い場所になると思います。