仮想ディレクトリを作成すると、そこが常に ./ になるので、仮想ディレクトリ内にディレクトリを作成して、実行ファイルをそこに入れて動かすというような環境の場合、全く動きません。
@C:RED(以下のようなメッセージ)
@DIV
Can't locate ./init.cgi in @INC (@INC contains: C:/Perl/site/lib C:/Perl/lib .)
@END
そのような場合は、実行ファイルがあるディレクトリを仮想ディレクトリにします。しかし、そのままでは HTTP 経由で ../ という参照をしている場合アクセスできなくなるので、例えば、画像ディレクトリであれば、ディレクトリ名と同じ仮想ディレクトリを作成して対応します。
ただ、.cgi や .pl の実行ファイルを perlis.dll にすると一応上記の件は解消されます。しかし、これだとどうも HTTP ヘッダの出力がうまくいかないバグがあるようです。( 確認したバージョンは v5.8.8(Binary build 816 〜 820) )
@LINE
で、@C:red(@INC) にパス追加したいだけなら
@DIV
C:\Perl\bin\perl.exe -IC:/lightbox/product -IC:/script/lib "%s" "%s"
@END
みたいな感じで IIS に登録する。
|