tDiaryで存在しない日記へのアクセスに404を返す
久しぶりの日記になっちゃった。
Google Webmaster Central Blog - Farewell to soft 404sを読んだ。 コンテンツが存在しないページにアクセスされたときは、「○○がありません」というメッセージをHTMLに出すだけじゃなくて、ステータスコード「404 Not Found」を返しましょうということ。 記事では、前者をソフト404、後者をハード404と呼んでいる。 ハード404を返せば、人間だけでなくコンピュータも理解できるよ、と。 そういえば、「404 Not Found」って、日本で一番有名なステータスコードじゃないんだろうか。
んで、tDiaryで日記がなかった場合も同じだよなぁと思い、修正してみた。
Index: index.rb =================================================================== --- index.rb (revision 3299) +++ index.rb (working copy) @@ -56,6 +56,7 @@ 'type' => 'text/html', 'Vary' => 'User-Agent' } + status = CGI::HTTP_STATUS['NOT_FOUND'] if tdiary.diaries.empty? head['status'] = status if status body = '' head['Last-Modified'] = CGI::rfc1123_date( tdiary.last_modified )
そういえば、モバイルからのアクセスも区別していないけど、大丈夫なんだろうか。 あとでtDiaryのITSに登録する。