クリボウの Blogger Tips

Google Blogger の使い方、カスタマイズ方法、各種ツールなど、
Blogger 関連の役立つ情報を紹介しています。

> > Shift_JIS と Blogger beta のフィードのこと

Shift_JIS と Blogger beta のフィードのこと

Posted at: 2006-12-14 Label: 4

前回の記事で、このブログも Blogger beta に移行した、ということをお伝えしました。

実にあっさり移行できてしまい少し拍子抜け。

などと、のんびりしていたのもつかの間、

フィード(RSSとAtom)が文字化けしてますよ。

とのコメントをいただきました。実際に Firefox で見てみると、このとおり。



ソースを見ると、フィード自体は Shift_JIS で書き出されているものの、文字コードの指定が

<?xml version='1.0' encoding='UTF-8'?>

となっています。どうやらこれが文字化けの元凶のようです。

この現象は BlogSpot 以外のサーバーで、さらに非 UTF-8 な文字コードで書かれたブログだけに起こる模様。現に、このブログの旧 URL においてある引越し案内ブログ(BlogSpot + Shift_JIS)ではこの問題は起きていなくて、Shift_JIS のブログ内容に対し、フィードは UTF-8 で書き出されています。


対応策

livedoor Reader などは問題なかったんですが、Bloglines やはてなリングでもデータの文字化けを確認。フィードリーダー経由で訪れる人も多いこのブログ、フィードが読めなくなるのはとても困るのです。

そこで対応策を考えました。それが .htaccess ファイルでリダイレクトする方法です。というのも、独自サーバーでかつ非 UTF-8 の文字コードで書かれている Blogger beta ブログでも、beta.blogger.com 上のフィードは UTF-8 で保存されている、ということが分かったため。これを利用しない手はありません。幸い(?)独自サーバーなので、.htaccess ファイルの設置も問題ないはずですし。

ということで .htaccess ファイルに

Redirect 302 /atom.xml http://beta.blogger.com/feeds/12345678/posts/full
Redirect 302 /rss.xml http://beta.blogger.com/feeds/12345678/posts/full?alt=rss

などと書くといい、というわけです。赤字の部分はブログ ID に書き換えて使ってください。

これでフィードリーダーもとりあえず問題なし、のはず。一時的なリダイレクトなので必ず 302 で飛ばすようにしてください。301 で飛ばすと「永久的な移転ですね」と判断されて、親切にもフィードリーダー内の情報が全て書き換えられてしまうので(参考)。


長々と書いたわりには、かなり特殊な状況での話なので、一般のユーザーにはほとんど役に立たない気がします。でももしかすると誰かの役に立つかもしれないな、ということで公開しておきます。Blogger beta がフィードの文字コード情報をきちんと書き出してくれたら、それで問題はなくなるんですが…。


スポンサードリンク:
お願い:
「この記事役に立った!」と思ったら、ぜひフィード登録をお願いします。 

Comments:4

Comments on Google+:

© 2005-2014 Kuribo. Powered by Blogger.