私は Java サーブレットを使用して Web アプリを開発しています。request.getRemoteAddr()
内部から呼び出してユーザーの IP 情報を取得したいと考えていますprocessRequest(HttpServletRequest request,HttpServletResponse response)
。
しかし、間違った IP を返します。私はこの領域についてあまり詳しくないので、何が表示されているのかわかりません。おそらくプロキシです。
リモートアドレス: 127.0.0.1 リモートホスト: 127.0.0.1 x-forwarded-for : null
127.0.0.1 は私の IP ではありません。
しかし、私が行くとhttp://www.javascriptkit.com/script/script2/displayip.shtml
、正しいものが表示されます。サーブレットを使用しているため、動的に生成された html ページへの .shtml がありません。どうすればよいですか? そして、なぜそのサイトのスクリプトは正しく表示できるのにrequest.getRemoteAddr()
できないのでしょうか?
すべての回答に感謝します。サーバーにデプロイした後、期待どおりに機能することがわかりました。正しい住所を表示しました。
しかし、ローカル マシンで開発した場合でも、実際のサーバーで実行されているかのように絶対 IP を表示するように要求するにはどうすればよいでしょうか。それとも実行可能ですか?