| ========= |
| 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 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 |
| |
| 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: :: |
| |
| <?php |
| |
| session_start(); |
| |
| header("X-LIGHTTPD-SID: ".session_id()); |
| |
| ?> |
| |