plone で shift_jis のサイトを作る(mod_chxj 編)
plone のサイトを携帯電話からも見えるようにするためには、文字コードを shift_jis にする必要があります。
サイトそのもののコードを shift_jis にしたり、 delegate で変換してきたりしました。
ただ、文字コード変換だけのために proxy はさむのもなんだよなー個人的には思っていました。
ちなみに、apache 2.0 からは フィルタ という機能が使えるようになったので、この機能を使って入出力する文字コードが変換できないかなと思っていました。
すると、そういったモジュールを見つけました。
mod_chxj というモジュールがそれです。
このモジュールの存在知らなかったんですが SF.jp 今月のプロジェクト 0804:mod_chxj というページで知りました。
mod_chxj は文字コード変換するだけでなく、携帯電話のためにタグを置換したり、不要なタグを削除したり、画像を携帯電話の画面サイズに合わせて変換したり、絵文字を変換したりなど、いろいろなことをやってくれます。
mod_chxj のインストールは SourceForge.JP: Project Info - mod_chxj のページから最新版をダウンロードして普通に make するだけです。
% ./configure % make % sudo make install
ちなみに、画像処理系のライブラリがいろいろ必要なので、あらかじめインストールしておく必要があります。
インストールしたら、アーカイブの etc の下にある
device_data.xml emoji.xml
というファイルを任意のディレクトリにコピーして、apache の設定ファイルに以下のように書きます。
ChxjLoadDeviceData /etc/apache2/chxj/device_data.xml ChxjLoadEmojiData /etc/apache2/chxj/emoji.xml ChxjConvertRule "^/.*$" "EngineOn" "UTF-8"
あとは apache 2 を再起動すれば、フィルタが有効になります。
このサイトもすでにフィルタが設定されているので、携帯電話からアクセスすると文字コードが shift_jis になっています。
また、問い合わせなどで入力した文字列も逆に utf-8 に変換されてきちんとサーバーに届きます。
絵文字とか画像変換も使うのであれば、このモジュールを使うのが決定版かなと。
ただ、私のように文字コードだけ変換したい場合には、ちょっと冗長な感じがします。
というわけで、もう一つよさげな手段を見つけました。(つづく)
-
- ¦
- 固定リンク
- ¦
- コメント (0)
- ¦
- トラックバック (0)
- トラックバック用URL:
- http://takanory.net/takalog/888/tbping