========= Accesslog ========= --------------------- Module: mod_accesslog --------------------- :Author: Jan Kneschke :Date: $Date: 2004/11/03 22:26:05 $ :Revision: $Revision: 1.2 $ :abstract: The accesslog module ... .. meta:: :keywords: lighttpd, accesslog, CLF .. contents:: Table of Contents Description =========== CLF like by default, flexible like apache 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 physical 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 incoming %O bytes outgoing ====== ================================ If %s is written %>s or % 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 Response Header --------------- The accesslog module provides a special way to log content from the application in a accesslog file. It can be used to log the session id into a logfile. If you want to log it into the accesslog just specify the field-name within a %{...}o like :: accesslog.format = "%h %l %u %t \"%r\" %b %>s \"%{User-Agent}i\" \"%{Referer}i\" \"%{X-LIGHTTPD-SID}o\"" The prefix ``X-LIGHTTPD-`` is special as every response header starting with this prefix is assumed to be special for lighttpd and won't be sent out to the client. An example the use this functionality is provided below: ::