0件のコメントLighttpdのプラグイン開発に苦戦しています。メモリに注意しないといけないシステムコールの戻り値に気をつかう(エラーハンドリング)様々なコンテキストに対応する必要があるI/O多重化の時の挙動をもっと理解しないといけないなと思ってます。OSを理解することなしでは成り立たないですね。息抜きということでLighttpdのインストールとLighttpd上で動くアプリについて書きます。OSXにLighttpdをインストールするOSXにLighttpdをインストールする手順です。pcreがなかったから指定しました。正規表現は大事なので入れましょう。prefixでインストール場所を指定します。logの場所を以下のように設定します。"127.0.0.1"lighttpdを起動します。index.htmlでも作って確認してください。リクエスト毎に起動される必要があります。そのためサーバが毎回インタプリタを起動しなければなりません。バックグラウンドでプロセスを生成しておきソケット通信します。毎回起動するCGIに比べ速くなります。CGIを使えるようにします。"/usr/bin/ruby")必要なpythonパッケージをインストールします。worldを書きます。world."CGIで使うためのおまじないをかけます。ブラウザを開いてlocalhostにアクセスします。lighttpd.confをparseしているのはconfigfile.cとconfigfile-glue.cです。ように記述してもルーティングしてくれないようです。従って、プラグイン内でrequest.url->ptrで文字比較して判定する必要があります。FastCGI次はFastCGIです。lighttdの設定からです。"/hello.py/$1",)FastCGIはバックグラウンドでプロセスを生成しておくことでCGIと起動と終了のコストをなくせます。リクエストが来なくても一定のメモリを消費する・このプロセスを監視する必要があるというデメリットもあります。socketの設定を肩代わりさせます。installspawn-fcgiは/usr/local/bin/spawn-fcgiにあります。モジュールをインストールします。flupサーバアプリケーションを書いてhello_wsgi.fcgiという名前で保存します。/usr/local/etc/lighttpd.confブラウザを開いてみましょう。mod_websocketなるものを発見しました。シェア1%のサーバにwebsocketのプラグインを書く人がいることに感動です。Elmastudio。