我想在 Apache 错误日志中添加“my_session”cookie 值。我添加了一个访问日志“LogFormat”,如下所示:
<IfModule mod_ssl.c>
<VirtualHost *:443>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-agent}i\" [%{my_session}C : %{UNIQUE_ID}e]" detailed
CustomLog ${APACHE_LOG_DIR}/ssl.www.example.com_access.log detailed
ErrorLogFormat "[%t] [%l] [pid %P] [%{UNIQUE_ID}e] [client %a] %M"
ErrorLog ${APACHE_LOG_DIR}/ssl.www.example.com_error.log
</VirtualHost>
</IfModule>
但是当我在“ErrorLogFormat”中添加相同的格式时,会出现无法识别的错误日志格式指令 %C 的错误:
ErrorLogFormat "[%t] [%l] [pid %P] [%{my_session}C : %{UNIQUE_ID}e] [client %a] %M"
我使用“mod_unique_id”来获取唯一的请求 ID。
我的要求只是在 Apache 错误日志中添加 SessionId 值/Cookie 值。
答案1
因此,取决于你想要记录的 Cookie 是在请求中还是在响应中,你只需使用%{标题名称}i或者%{标题名称}o分别。
答案2
这是我现在正在使用的 httpd.conf 文件的摘录。
LogFormat "%r \"%{Cookie}i\"" combined