読者です 読者をやめる 読者になる 読者になる

文系プログラマによるTIPSブログ

文系プログラマ脳の私が開発現場で学んだ事やプログラミングのTIPSをまとめています。

ログに絶対URLを表示させる

nginx

前回に引き続き、nginxのログの話題。
access.logを見ていて、ふと絶対URLが見れたらいいのになあ、と思ったので対応してみました。

修正前
log_format main '$host$remote_addr - $remote_user [$time_local] "$http_host" "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

127.0.0.1 - - [11/Jan/2012:20:17:16 +0900] "GET /rakuten/item/search/553550/?genreSelectFlg=1 HTTP/1.1" 200 28159 "http://localhost/rakuten/item/search/505034/?genreSelectFlg=1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7" "-"

修正後
log_format custom1 '$remote_addr - $remote_user [$time_local] "$request_method $scheme://$http_host$request_uri" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';

127.0.0.1 - - [11/Jan/2012:20:45:15 +0900] "GET http://localhost/rakuten/item/search/400962/?genreSelectFlg=1" 200 36425 "http://localhost/rakuten/item/search/112203/?genreSelectFlg=1" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_7_2) AppleWebKit/535.7 (KHTML, like Gecko) Chrome/16.0.912.75 Safari/535.7" "-"

クローラがどのホスト名にアクセスしてくるかも解るので、絶対URL表示の方がいいですね。