17U4バージョンで注意

現時点で最新のGeneXus17U4ですが、運用で困る不具合がありました。

HttpRequest.RemoteAddressにて取得できる値が、17U2ではクライアントのIPアドレスですが、

17U4でサーバーのIPアドレスが取得されるようになってしまいました。


そもそもRemoteAddressはプロキシを使用していたり、

ネットワーク構成によっては正しくクライアントのIPが取れないこともあるのですが、

今回の場合は、以下のどのやり方でもすべてサーバーのIPアドレスが返却されてしまいました。


WebPanelのイベント

&W_IP1 = &Httprequest.RemoteAddress

&W_IP2 = &Httprequest.GetHeader("X-Forwarded-For")

java [!&W_IP3!] = getHttpContext().getRequest().getRemoteAddr();



また、GeneXusから出力されるログ(デフォルトだとclient.log)のIPアドレスも

サーバーのIPアドレスになってしまうため、運用で非常に困る状況になります。


ちなみにTomcatのアクセスログのIPアドレスはクライアントでしたので、

あくまでもGeneXusから出力されるIPアドレスの問題のようです。


★★★

当現象について、17U5で既に解消済みとのことでして、

日本版では17U6が2021年12月下旬にリリース予定となっております。


コメント

このブログの人気の投稿

Tomcatの設定3:8080ポート以外で動作させる

Tomcatの設定1:データソースを使用する方法とメリット

Tomcatの設定2:アクセスログの活用

Tomcatの設定5:メモリ調整と起動モード

IVS文字・サロゲートペア文字の注意

Tomcatで画面表示の速度改善