• 締切済み

リダイレクトした時のファイルサイズは?

CGIで、Status: 301 Moved PermanentlyとLocation: http://***.***を出力した時のログは、 ...HTTP/1.1" 301 5 "-" "Mozilla...とデータサイズが5バイトになっています。 一方、.htaccessで、 RewriteRule (.*) http://****.jp/ [R=301,L] とした時のログは、 ...HTTP/1.1" 301 307 "-" "Mozilla...とデータサイズが307バイトになっています。 この5バイトとか307バイトというのは、具体的に何のサイズなのでしょうか? 5バイトは、301で3バイト+改行2個とか? 307バイトって??サーバーからのメッセージでしょうか?

みんなの回答

  • Toshi0230
  • ベストアンサー率51% (836/1635)
回答No.1

ログのフォーマットは任意に変更可能なので、 ・HTTPサーバの種類(Apache, IIS, etc.) ・ログフォーマットの種類 を明記しないと誰にも判りません。 Apacheの"combined" ログフォーマット(↓)だとして、 ------- LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined ------- 該当する答えとしては以下になります(Apache2のマニュアルから抜粋) ------- クライアントに送信されたオブジェクトの、 応答ヘッダを除いたサイズを現します。コンテントがクライアントに送られなかった 場合は、この値は "-" になります。コンテントが無い場合に "0" をログ収集するには、%b ではなく %B を使ってください。 -------

maomao55
質問者

お礼

回答ありがとうございます。

maomao55
質問者

補足

すみません、説明不足でした。おっしゃるとおり、Apacheの"combined" ログフォーマットです。 「クライアントに送信されたオブジェクト」というのはリダイレクトの場合、具体的にどんな内容なのでしょうか? CGIと.htaccessではサイズがずいぶん違うので気になった次第です。 CGIの場合の5バイトはステータスコードと改行程度、.htaccessではRewriteEngine onと3組のRewriteCond、RewriteRuleの行全部のサイズが280バイトくらいなのですが、そういうことではないのでしょうか?

関連するQ&A