Tags : apache
このTagsの登録数:2件 表示 : 1 - 2 / 2
2006-09-28
apache のモジュールをつくってみよう
ということにきめた。コードはまだない。
ネタ的には mod_p2p (mod_winny?) って名前になりそうなのが最後の目標。社員のPCみんなにいれて分散ハッシュで検索できたら便利かもと。
とりあえず動くまででも半年ぐらいはかかるかな。 C + socket + thread + あとなんだろう。
目的は gcc, C/C++, 通信処理関係のコーディングリハビリ。それに普段つかってるapacheの中も知りたかったし、金子さんがやったこと辿ってみたいというのもある。欲張りなんだけど、モチベーションの元だからね。
まずは apache2 をビルドできる環境をつくって、マニュアルやmod_example のコードを読んでる。 さしあたりの目標は、mod_helloworld をつくるかな。来週いっぱいぐらいでやりたいな。
APR もわからんし、apache 内部の仕組みもよくわからないんだけど、モジュールはコールバック関数を登録して随時呼ばれるみたい。10年前の仕事(iwangoのプロトタイプ)で Netscape の Plugins を英語ドキュメントを調べ調べ試し書いてたころを思い出す。
なつかしい。
Cのコードは、昔コンサル案件で pthread + socket がらみのテストコードを書いて以来。emacsenになってからは初。 ここ数年 Lightweight Programming Language でやってたので、プリプロセッサが新鮮だなあ。


apxsだけでとりあえずモジュールの雛形ができたのでちょっといじって mod_hello ができちゃった。
つぎはどういう仕組みでこれが動いてるかしらべよう。
雛形作成
モジュールのコンパイル・インストール
モジュールのインストールとhttpd.conf への追加
mod_hello.c はこれ。
httpd.confにはこう書いた