自由不会在访问日志中记录远程/前端用户IP

时间:2016-11-24 08:43:01

标签: websphere-liberty

我们的部署Apache Httpd(WAS插件)+ WLP集群,Apache Httpd的访问日志显示正确的前端用户IP,但在WLP的访问日志中,HTTP请求的IP是Apache Httpd服务器IP而不是前端用户IP。

我打开了WAS WebServer Plug-in DEBUG日志级别,并在http_plugin.log中看到$ WSRA已正确设置如下:

[24/Nov/2016:02:42:13.63592] 00001a55 9e5f6700 - DETAIL: mod_was_ap24_http: cb_get_headers: Skipping header name '$WSRA'; This is a restricted WebSphere header
7483 [24/Nov/2016:02:42:13.63594] 00001a55 9e5f6700 - DEBUG: Set header |$WSAT| to |openid-connect|
7484 [24/Nov/2016:02:42:13.63596] 00001a55 9e5f6700 - DEBUG: Set header |$WSIS| to |true|
7485 [24/Nov/2016:02:42:13.63598] 00001a55 9e5f6700 - DEBUG: Set header |$WSSC| to |https|
7486 [24/Nov/2016:02:42:13.63600] 00001a55 9e5f6700 - DEBUG: Set header |$WSPR| to |HTTP/1.1|
7487 [24/Nov/2016:02:42:13.63602] 00001a55 9e5f6700 - DEBUG: Set header |$WSRA| to |9.125.233.196|
7488 [24/Nov/2016:02:42:13.63604] 00001a55 9e5f6700 - DEBUG: Set header |$WSRH| to |9.125.233.196|
7489 [24/Nov/2016:02:42:13.63606] 00001a55 9e5f6700 - DEBUG: Set header |$WSRU| to xxxxxx
7490 [24/Nov/2016:02:42:13.63608] 00001a55 9e5f6700 - DEBUG: Set header |$WSSN| to |9.115.114.76|
7491 [24/Nov/2016:02:42:13.63610] 00001a55 9e5f6700 - DEBUG: Set header |$WSSP| to |443|

同时在后端WLP服务器中,我有一个JSP打印出HTTP头,$ WSRA仍然是正确的。

但是在WLP access.log中,出了点问题,它使用代理服务器IP(与$ WSSN相同)而不是$ WSRA。

9.115.114.76 xxxxxxx "GET /test/ HTTP/1.1" ...

我们想在access.log中记录$ WSRA真正的远程用户IP。感谢。

1 个答案:

答案 0 :(得分:0)

最后,我能够使用自定义WAS访问日志格式" %{WSRA} i %u%{t} W"%r" %s%b"将真实的远程用户IP地址打印到访问日志