石垣さん、
よかったです。
下にもある通り ActiveState の Build 316 ではどうしてもスクリプトのパスに PATH_TRANSLATED を使うので、 本来のパスがセットできませんでした。
ActivePerl を使えということなのでしょう。
中田様
ISAPIの設定変更ありがとうございました。いまは実に快適に動いております(^^)
#ISAPIにしたらこんなに早かったのか!と目からウロコの思いです。
石垣さん、
了解しました。環境変数にセットするのとISAPIに渡すのとを別にすればできるのかもしれません。
だめならだめとお知らせします。
中田様
さっそくのお返事ありがとうございました。都合の悪いことに手元に
ほかのISAPI環境がなく挙動のよしあしすらわからなかったのですが、
できればISAPIの有無にかかわらず同じスクリプトが動いてくれると
ありがたく思っております(エキストラパスなんて使わなきゃよいの
かもしれませんが :-)。お手数おかけいたしますがよろしくご検討
ください。
石垣さん、
PerlIS では PATH_TRANSLATEDにスクリプトファイルを指定する仕様のようなので、現在の AN HTTPD の実装法では PATH_INFO, PATH_TRANSLATED は正常に働きません。
と思っているのですが、私が仕様を誤解しているのかもしれませんので、もう一度見直してみます。
中田様
はるか以前に書き込みさせていただいたことがあったかもしれません。
いつもたいへんありがたく使わせていただいております。
相性の問題かもしれないのですが、ActivePerlのPerlISでエキストラパス(PATH_INFO)を
使おうとすると実行パス?に余分なデータがくっついてスクリプトそのものが実行されない
ようです(スクリプトの内容にはよらず、printfしかないスクリプトでもダメです)。
手元にあるActivePerlのビルドは522ですが、少なくとも515くらいからは同じ問題があった
ように記憶しております(AnHTTPdは最新版125bです)。
なお、PerlISを使わないときは正しくエキストラパスを取得できております。こちらの設定
ミスかもしれないのですが、念のためご確認いただけますでしょうか。
#ログではServerSupportFunction(HSE_REQ_MAP_URL_TO_PATH)の部分がDOCUMENT_ROOT+
#PATH_INFOとなっているのですが、これで挙動正しいのでしょうか?