userid不会打印在Apache访问日志中

时间:2015-06-11 21:32:34

标签: apache logging userid

我的生产设置为

  webSEAL --> F5 --> 2 Apache --- 2 weblogic servers.

对于每个请求,webSEAL日志都会打印登录的用户ID和weblogic,它位于基础架构链的最后端,也有weblogic http access.log中的用户ID(不是应用程序日志,而是weblogic内部访问日志)但是Apache中没有显示任何内容。

即使我在apache上添加了新的日志记录配置,它也不会在apache访问日志中打印user_id。它只是打印一个破折号 - (信息不可用)。

以下是httpd.conf和输出中添加的配置。

LogFormat "%h %V %u %t \"%r\" %>s" test
CustomLog logs/testLogs testFormat

***192.168.44.53 localhost - [11/Jun/2015:23:21:39 +0200] "HEAD / HTTP/1.1" 200*** 

我还需要做些什么来“使用户ID可用于Apache实例”。

这是我在我的环境中使用的Apache 2.0X的参考。 http://httpd.apache.org/docs/2.0/logs.html

1 个答案:

答案 0 :(得分:0)

如果使用HTTP Basic或Digest身份验证对请求进行身份验证,则%u模式代码会记录远程用户名。在示例日志条目中,此值为“ - ”,表示请求未通过HTTP Basic或摘要式身份验证进行身份验证。

您可以使用Apache使用X-Forwarded-For标头记录客户端IP地址。

标准的LogFormat指令: LogFormat“%h%l%u%t”%r“%> s%b”常见

要添加客户端源IP地址,只需将其更改为: LogFormat“%h%l%u%t”%r“%> s%b%{X-Forwarded-For} i”常见

标准日志: 192.168.2.210 - - [09 / Feb / 2011:09:59:31 +0000]“GET / HTTP / 1.1”200 44

客户IP已添加: 192.168.2.210 - - [09 / Feb / 2011:10:00:16 +0000]“GET / HTTP / 1.1”200 44 192.168.2.7