まあ言ってみれば
1) プライベートイントラネットでサーバーを稼働させています。Tomcat を使用して、privateserverip:8080/appname で Web アプリケーションを提供しています。
2) myapp.localドメインがあり、トップレベルに入るとhttp://myapp.localリクエストがイントラネット内から来た場合、privateserverip:8080/appnameからアプリを提供します。
それが実際の状態です。
現在: パブリック ドメイン example.org があり、Web サイトがイントラネット (!) 内のユーザーを myapp.example.org にリダイレクトする場合、privateserverip:8080/appname が提供されるようにします。イントラネット外のユーザーが myapp.example.com にアクセスした場合は、何も起こりません。
これが可能かどうか教えてください!? :)
example.com の nginx で vhost を設定することもできますが、example.com の DNS エントリなどを作成することもできます。必要なことはすべてできます。これが可能かどうか教えてください。
ご協力いただきありがとうございます :)
答え1
2 つの方法のうちの 1 つ:
- ローカル クライアントを、myapp.example.com/appname へのすべてのリクエストに対して Web サーバーの内部 IP アドレスを提供するイントラネット内の DNS サーバーにポイントします (URL で appname を使用する必要があります。そうしないと、単純な IP マッピングは機能しません)。
- example.com の DNS 設定を変更し、Web サーバーの内部 IP アドレスを指す A レコードを追加します。幸いなことに、ネットワーク外部のユーザーは内部ネットワークにアクセスできませんが、サーバーの (内部プライベート) IP アドレスは知ることができ、セキュリティ上の懸念となる可能性があります。
可能であれば、1 番をお勧めします。通常、これはルーター (通常は DNS サーバー) で実行できます。
答え2
なぜ人々はプライベートとパブリックを混同するのでしょうか? 内部ユーザーがプライベート URL (http://myapp.local) およびパブリック URL (参考:)。それ以外は、良い実践に対する単なる回避策です。