mod_trimxml というのを作ってみた

最近いそがしくて書く暇がなかったんで,ひさびさにプログラミングしてみました。

MSIE 6 だと DOCTYPE 宣言より先行して XML 宣言(等)があると Quirks mode になるのは有名です。それが不満だったので Apache のモジュールを作りました。MSIE だと先頭の <?xml 〜?> を snip します。

それ SSI (ry

または,UTF-8 で書けばいいじゃん。


ともかく,ソース等はこちら。⇒ mod_trimxml - daily dayflower

  • ひさびさにモジュール書いたら忘れていることが多くて大変でした
  • でも前より他のモジュールのソースを読み込んだりしたんで勉強になったことも多かったです
  • 軽いテストはしましたが,bucket や brigade が複数にまたがる状況*1のテストができなかったんでどんな状況でもきちんと動くかどうかはわかりません
  • If-Modified-SinceEtag チェックで 304 になる場合,フィルタまで処理がわたってきたときは,EOS bucket only な brigade が渡されるっぽい。試験にでるかも。
  • 簡単じゃんと思ってたけど縛りをなるべくなくそうと思ったら大変でした。あとなるたけ不要になった brigade を destroy してたりするんで APR pool を信頼してそのへん端折ったり,仕様に縛りをつけたらもっとシンプルに書けたのに。
  • そろそろ Code 某のアカウントとらなきゃか……パスワード考えるのがめんどくさいです
開発に役立ったドキュメント(で以前紹介しなかったもの)

*1:どうすればそのような環境になるんでしょうか