[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[kahua-dev:00798] in-place サポート (Re: kahua-spvr の http サポート)



kahua-spvr他、shiro_reorg1で進めていた作業をtruncへマージしました。
手元のテストではkahua-webを含め他のコードに影響は出ていませんが、
機会があれば確認して下さい。

kahua-spvrのhttpdモードでstatic document uriがハンドルされるように
なったほか、in-placeでの実行もサポートします。
[kahua-dev:00791]の「実行環境に関するいくつかのアイディア」にあげた
項目のうち、1と2について一応の解決となっているのではないかと思います。


* in-placeでの走らせかた

普通にconfigure, makeしてから、srcに降りて

 % ./kahua-spvr --test

のように最初の引数に--testを与えればin-placeで走ります。
kahua-adminも--testを最初の引数に与えて下さい。

in-placeで走る場合、$(top_builddir)/tmp 以下をworking directoryと
して使います。make時にディレクトリが作られ、examples以下にリンクが
はられたりしているはずです。

kahuaを試したい人が最も簡単にテストするには、make後に

 % ./kahua-spvr --test -H 8080 -l -

のようにしてhttpdモードで走らせるのが良いでしょう。これですぐに
ブラウザから http://localhost:8080/ でアクセスできます。

in-placeで走らせるトリックですが、make時にsrc/make-testconf.scm
というスクリプトが走って、$(top_builddir)/tmp に適切なセットアップを
すると同時に、src/test.conf というファイルを生成します。
そして、kahau-spvrなどのラッパーシェルスクリプトは第一引数に--test
が渡された時に周辺のディレクトリをチェックして、src/test.confをconffile
として使うようにします。なお、--testが渡されていても -c オプションで
conffileが指定されていればそちらが優先されます。


* httpdモード

-Hもしくは--httpdオプションには、次のいずれかの形式の引数を
渡すことができます。

  port-number        例:  -H 8080
  host:port-number   例:  -H scherzo:8080

いずれも指定のポート番号でサーバソケットをオープンします。ホスト名
部分はアプリケーションサーバがホスト名を含むuriを生成するのに
使われます。省略されるとlocalhostになります。イントラネットで
公開する場合は自分のホスト名を指定すると良いでしょう。

いまのところ、エラーが起きるとなんでもかんでも 500 Internal Server Error
になってしまいます (渡されたuriが不正、などの場合でも)。そのへんを
直して、他に問題がでなければ、次のリリースとしてしまってもいいかと
思います。(httpサポートは結構大きいと思うんで0.3にします?)

--shiro