2003年5月7日(水曜日)
バグ取り
さりげなく hatomaru.dll のバグ修正。謎の鳩丸 URN の処理がバグっていて、特定の見出しを持つトピックを指す URN が正しく変換されていなかったという……。
ついでに ebi.cs のソースをちょっと修正中。
- 「バグ取り」にコメントを書く
関連する話題: プログラミング / C# / hatomaru.dll
エンティティボディのない 302 応答
"panasonic.co.jp/ideas" という謎の文字列は、"http://panasonic.co.jp/ideas" という URL を連想させます。アクセスしてみると、こうなります。
HTTP/1.1 302 Moved Temporarily
Server: Netscape-Enterprise/4.1
Date: Wed, 07 May 2003 04:22:22 GMT
Location: http://panasonic.co.jp/ideas/
Content-length: 0
Content-type: text/html
Proxy-Connection: close
Connection: close
ちょっとびっくりしました。いや、302 になること自体は予想していたのですが、302 応答にエンティティボディがない (Content-Length: 0 になっている) のでびっくりしたのです。
Apache なり IIS なりの場合、GET に対する 302 応答の時にはエンティティボディが返されます。たとえばこんな感じ。
HTTP/1.1 302 Object Moved Location: http://altba.com/bakera/ Content-Type: text/html Content-Length: 147 <head><title>Document Moved</title></head> <body><h1>Object Moved</h1>This document may be found <a HREF="http://altba.com/bakera/">here</a></body>
思いっきり here症候群なのがみっともない感じですが、Location フィールドの指す URL へのリンクを含む HTML が出力されています。そうしておかないと、ブラウザが自動リダイレクトしなかった場合に二進も三進も行かなくなってしまうからです。RFC2616 でも、このようなエンティティを出力すべきだとされています (SHOULD)。
しかし panasonic.co.jp はそんな HTML を全く返してこないわけで、RFC2616 で SHOULD とされていることを守れていないわけです。これ、サーバの設定の問題なのかと思いましたがそうでもないようで、Netscape-Enterprise のところはことごとく Content-Length: 0 な 302 応答を返してきます。単純に、Netscape-Enterprise ってそういうサーバなのだという話のようですね。
コンテントネゴシエーションの件といい、Netscape-Enterprise って駄目かも……。
関連する話題: Web / UA / HTTP / Netscape-Enterprise
Urizilla?
"Urizilla (Korean Kimuti OS)" という UA が凄い勢いでアクセスしていました。Google で検索してもそれらしいものの記述は見つからないのですが、この人間離れした勢いからするとロボットなのでしょうか……と思いきや、CSS ファイルを持って行っているのでそうでもない感じです。
初めてのアクセスのようなのに 304 が返っていたりしたので、ちょっとログを追ってみると、どうも以前 IE でアクセスした時のキャッシュを持っていらっしゃるようです。単に User-Agent が変わっただけな感じ。変換のローカルプロクシを通したとか、IE コンポーネントを使用するタブブラウザみたいなものに乗り換えたとか、そんなところでしょう。
まあ問題はないのですが、キムチ好きなのかしら……。
- 前(古い): 2003年5月6日(Tuesday)のえび日記
- 次(新しい): 2003年5月8日(Thursday)のえび日記