默认在lighttpd的accesslog里面无法记录透过squid或者apache的mod_proxy过来的用户ip地址,全都会记录到 squid或者apache机器的ip地址,但是httpd头里面的用户ip其实是发送到lighttpd的,可以通过修改 accesslog.format来达到目的
修改lighttpd配置文件中的的日志格式
server.modules = (..., "mod_accesslog", ... )
#### accesslog module
accesslog.filename = "/var/log/lighttpd/access.log"
accesslog.format = "%{X-Forwarded-For}i %v %u %t \"%r\" %s %b \"%{User-Agent}i\" \"%{Referer}i\""
其中”%{X-Forwarded-For}i 就是记录了用户来源的ip地址,这里日志与Apache combined相同。