あるWebサービスに接続するシステムで、社内でテストするダミーのWebサーバーを作らないといけなくなった。
「とにかく早く」ということで、基本はLinuxOS + Apache で構築しているのだが、OSインストールのいらない Windows + IIS で行うことにした。httpでリクエストされるのだから結果さえ真っ当に返れば問題はない。言語が必要になるようだったので、周囲に技術者がいるPHPを選択した。
IISをまともに触るのは初めてであった。バージョンは5.0。まあ、一通り画面をみれば「なんとなく」設定は分かった。
ただ、PHPを動かすまでがちょっと大変だった。
・ISAPIパスにPHPの php5isapi.dll を追加する。
・ホームディレクトリの[構成]ボタンから PHP の php5isapi.dll を追加する。動詞は「すべて」とした。
このままだとHTTPのrリターンコードが 403 とかで返ってきた。実行権限がないらしい。
ここで必要な設定のところで引っかかったが
・ディレクトリ セキュリティの匿名アクセスおよび認証コントロールの[編集]でユーザーを編集
でOKになった。
今回、「社内で使う何でもありサーバー」なので、ここで表示されているユーザーではなく、自分のWindowsのログインID/パスワードに変えた。もしインターネットに公開するのなら、ここのIDもしくは別途IDを用意し、権限を付加することでできるようになる。そうしないとセキュリティ上の「穴」になる可能性がある。
これ、IIS なら Web 経由でExcel VBA をサーバー上で実行することも可能なのかもしれない。