2025年03月26日
このエントリーをはてなブックマークに追加
CentOS 6 で動作していた CGI ファイルがあります。
様々な理由でこれをWindows Server 2019 でそのまま動かしたいとのことでした。

うーん。なんか無理そう。
そう思ったのが最初でした。

試してみたところ、以下の方法で動作するようでした。
※簡単なPerlプログラムだったのかもしれません。もしくは素直な構成だったとか??

デフォルトの状態では、IISから502エラーが返されていました。

※デフォルトの状態とは、エクスプローラーから、IUSRユーザーに権限を与えています。同様にIIS_IUSRSにも権限を与えています。
また、IISマネージャーから拡張子cgiはperlで実行されるようにハンドラーマッピングの設定をしています。

以下の設定をすることで、まずは動作するようになりました。
・アプリケーションプールの設定
Default Web Site に設定されている場所にCGIが保存されているフォルダを配置すると、IISマネージャーにも表示されるようになります。
IISマネージャーに表示されているこのフォルダを右クリックすると、アプリケーションへの変換のメニューが出てきます。

アプリケーションプールの名前を設定し、有効化します。

アプリケーション化することで、cgiが動くようになりました。


その他IISの機能をインストールするときに、エラートレースを入れると、エラーの詳細を取得することができるようになります。
この機能のおかげで、 perl で symlink を利用していたことが原因でエラーになっていたことを突き止めることができました。


stock_value at 13:40│Comments(0)技術 

この記事にコメントする

名前:
URL:
  情報を記憶: 評価: 顔