Archive for 2010/2/26
mod_chxjは、現在、端末の識別設定をXMLで行います。
補足)mod_chxjとは、ドコモ向けにに書かれたhtmlをサーバ側で自動的に各キャリアごとにhtmlの変換やら、画像サイズの変換やらをやってくれるApacheのモジュールです。
まあ、XMLというフォーマット自体もちょっと面倒といえば面倒なのだが、
それ以上に、端末の識別が正規表現というのが非常にめんどくさい。
かといって、CSVやTSVから端末IDからすべて設定というのも、オープンソースという性質から考えてちょっと不親切ですよね。
(だって、端末情報を含めてきちんと提供できるわけでもないわけですから・・・)
特に最近は、「3Gの端末で、とりわけひどい状況にならなければいいんじゃないの!」
という感じで携帯サイトを運用したいと考えれば、1つ1つの端末に対する設定ということをしなくてもいいという判断もあり得ます。
であれば、正規表現でいいのだが、それだと、例外が面倒です。
もちろん正規表現は非常にパワフルなので、できることはできるのだが、例外くらい個別に指定できる方が直感的に理解しやすい。
たとえば、DoCoMo/2.0の端末はほぼ、XHTMLのフォーマットが使えるらしい。
ただしDoCoMo/2.0にも関わらず、D2101V、P2101V、SH2101V、T2101V、N2001、N2002、P2002の端末がXHTMLはだめらしい。
と、ここでふつうにやりたくなるのは、パターンでDoCoMo/2.0の端末はすべてXHTMLでフォーマット。
D210V、・・・・は、個別に例外で除外。つまり、ほかのフォーマットを適用。
ということをしようとすれば、何らかのパターン表現のフォーマット+個別指定のフォーマットというのが理解しやすいいうことになる。
ということで、mod_chxjにTSVから端末情報を読み取り、上書きできるようなパッチを作成し、オリジナルに返しました。
(まだ、反映はされていませんが・・また、以前述べたよう(下記、関連する記事を参照)にこれ以外にも、XHTML関連のCSS対応も返しているので、こちらと合わせて、
だいたい私的に、XHTML端末のサイトを運用するのに、mod_chxjでカバーできるようになったとおもう。)
最近、端末性能が良くなって、以前ほど、画像サイズだ、なんだと気にしなくてもよくなってきたので、
ルーズな運用用途のニーズもあるのではないでしょうか?
まあ、そんな運用にも耐えやすいのは、オープンソースという特性ならではでないでしょうか。
でも、きちんとサービスを継続していくと、結局、個別の指定も必要になってしまうんだけどね。
そこまでの過程としても、いいだろうし・・・・
ということで、結局、個別の指定が必要なんだよねとなってしまったサイトにも、メリットがあるように、
さらに、ちょっとしたおまけとして、TSVでは任意の項目を定義できるようにしました。
mod_chxjで管理していない端末情報をリクエストヘッダに設定するようにしましたので、
使い方によっては、もっと応用できると思います。
オリジナルに反映される頃には、具体的な指定方法とか、使い方を記述できたらと思います。


