这两天,产品那边有个需求
牵涉到lighttpd的access log
(需要在access log里加上refer信息,同时还有些特定的url不要记到access log里)
于是哈哈就翻了翻lighttpd的文档(关于access log的)
顺便贴到这里:
Accesslog
Module: mod_accesslog
Author: |
Jan Kneschke |
Date: |
2004-11-03 |
Revision: |
1.2 |
Abstract
The accesslog module …
Options
accesslog.use-syslog
send the accesslog to syslog
Default: disabled
accesslog.filename
name of the file where the accesslog should be written too if syslog is not used.
if the name starts with a ‘|’ the rest of the name is taken as the name of a process which will be spawn and will get the output
e.g.:
accesslog.filename = "/var/log/lighttpd.log" $HTTP["host"] == "mail.example.org" { accesslog.filename = "|/usr/bin/cronolog" }
Default: disabled
accesslog.format
the format of the logfile
Option |
Description |
%% |
a percent sign |
%h |
name or address of remote-host |
%l |
ident name (not supported) |
%u |
authenticated user |
%t |
timestamp for the request-start |
%r |
request-line |
%s |
status code |
%b |
bytes sent for the body |
%i |
HTTP-header field |
%a |
remote address |
%A |
local address |
%B |
same as %b |
%C |
cookie field (not supported) |
%D |
time used in ms (not supported) |
%e |
environment (not supported) |
%f |
phyiscal filename |
%H |
request protocol (HTTP/1.0, …) |
%m |
request method (GET, POST, …) |
%n |
(not supported) |
%o |
response header |
%p |
server port |
%P |
(not supported) |
%q |
query string |
%T |
time used in seconds |
%U |
request URL |
%v |
server-name |
%V |
(not supported) |
%X |
connection status |
%I |
bytes incomming |
%O |
bytes outgoing |
If %s is written %>s or %<s the < and the > are ignored. They are support for compat with apache.
%i and %o expect the name of the field which should be written in curly brackets.
e.g.:
accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{User-Agent}i\" \"%{Referer}i\""
Default: CLF compatible output
最后我加的配置文件是这么几句: $HTTP["url"] !~ "/(xxxxxx.ini|xxxxx.php)$" {
accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{Referer}i\""
accesslog.filename = "/www/logs/access_log"
} |