Date: 2004-04-24
Tags: zope, memo

ZWikiがiso-8859-1で表示される問題

自分はWebサイトをUTF-8で構築しているのですが、なぜかZWikiのページだけがiso-8859-1で表示されてしまっていました。ソースを表示してみると、metaタグでちゃんとcharset=utf-8と書いてあるのですが、パケットキャプチャーしてみたところ、ResponseHeaderに:

Content-Type: text/html; charset=iso-8859-1

の1行が。

OperaはmetaタグよりもResponseHeaderを優先するので、Operaユーザーとしては見過ごせません。というかResponseHeaderとmetaタグの記述が一致してないという方が問題ですが。

そこで、Zopeのソースを眺めたり、ZWikiのソースを眺めたり、Zope-MLの過去ログを漁ったり‥‥と色々と調べてみた結果、よく分かりませんでした(笑)。そこでふと思ったのが、「apacheが何かしてるんじゃないか?」という事でした。そういえばサーバー移行のときに ついでに FrontEndにapache2を配置したような‥‥。

さっそくapacheのhttpd.confを修正したところ無事問題解決。1時間くらい悩んでしまいました‥‥。

変更部分:

#AddDefaultCharset ISO-8859-1
AddDefaultCharset UTF-8

ZWiki以外はContent-TypeをResponseHeaderに入れるようにしているので、省略時にDefault値をapache2が入れていた事が原因のようです。

# それはそれとして、そろそろZWikiコンテンツの内容更新しないと‥‥