[apache] mod_dumpio模块
在理解代码时,发现一些apache非常有用的模块,平时没怎么关注,因此这里整理一些。
先说明mod_dumpio,其他模块后续补充。
mod_dumpio 会记录所有Apache接收到的请求数据和输出的响应数据,
dump数据发生在SSL解码(输入)之后和SSL编码之前(输出)。
这么做会导致在日志中写入海量的数据,因此建议在发现问题并进行调试的时候使用。
或者必要时,也可以做好日志文件的滚动。
【设定方法】
LoadModule dumpio_module modules/mod_dumpio.so
DumpIOInput On
DumpIOOutput On
同时,为了输出到日志文件中,需要确保LogLevel改为debug。
LogLevel debug
请求首页http://localhost/,输出it works页面的日志:
1 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 2 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 16 bytes 3 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): GET / HTTP/1.1\r\n 4 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 5 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 201 bytes 6 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): Accept: application/x-ms-application, image/jpeg, application/xaml+xml, image/gif, image/pjpeg, application/x-ms-xbap, application/vnd.ms-excel, application/vnd.ms-powerpoint, application/msword, */*\r\n 7 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 8 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 36 bytes 9 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): Accept-Language: ja-JP,zh-CN;q=0.5\r\n 10 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 11 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 171 bytes 12 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): User-Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; WOW64; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET4.0C; .NET4.0E)\r\n 13 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 14 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 32 bytes 15 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): Accept-Encoding: gzip, deflate\r\n 16 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 17 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 17 bytes 18 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): Host: localhost\r\n 19 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 20 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 24 bytes 21 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): Connection: Keep-Alive\r\n 22 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(113): mod_dumpio: dumpio_in [getline-blocking] 0 readbytes 23 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_in (data-HEAP): 2 bytes 24 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_in (data-HEAP): \r\n 25 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(142): mod_dumpio: dumpio_out 26 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_out (data-HEAP): 400 bytes 27 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_out (data-HEAP): HTTP/1.1 200 OK\r\nDate: Tue, 05 Feb 2013 08:54:17 GMT\r\nServer: Apache/2.2.22 (Win32) mod_ssl/2.2.21 OpenSSL/1.0.1c\r\nSet-Cookie: Apache=127.0.0.1.1360054457563571; path=/; max-age=315360000\r\nLast-Modified: Sat, 20 Nov 2004 06:16:26 GMT\r\nETag: "300000004425f-2c-3e94a902f4280"\r\nAccept-Ranges: bytes\r\nContent-Length: 44\r\nKeep-Alive: timeout=5, max=100\r\nConnection: Keep-Alive\r\nContent-Type: text/html\r\n\r\n 28 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(142): mod_dumpio: dumpio_out 29 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_out (data-FILE): 44 bytes 30 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(74): mod_dumpio: dumpio_out (data-MMAP): <html><body><h1>It works!</h1></body></html> 31 [Tue Feb 05 16:54:17 2013] [debug] mod_dumpio.c(55): mod_dumpio: dumpio_out (metadata-EOS): 0 bytes
参考链接:
http://httpd.apache.org/docs/2.2/en/mod/mod_dumpio.html