3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Windows10 (Home/Pro) でIIS+WSH-CGIを構築する

Last updated at Posted at 2021-07-08

はじめに

Windows10 (Home/Pro) にIISが居るらしいので有効化してついでにWSHをCGIとして動作するようにしてみた。

環境

Windows 10 Home 21H1(IIS6)

手順

IISとCGIの有効化

スタートメニュー→設定→アプリと機能を開き、オプション機能をクリック。
image.png

アプリと機能画面の下部または右側にある関連設定・Windowsのその他の機能を開く
image.png

インターネットインフォメーションサービスにチェック
Web管理ツール→IIS管理コンソールにチェック
World Wide Web サービスにチェック
アプリケーション開発機能→CGIにチェック
image.png

上画像のような状態になったことを確認し、OKを押す。
IIS機能の有効化処理が始まるため、しばらく待つ。

CGIの設定(WSHとの関連付け)

スタートメニュー→Windows管理ツール→IISマネージャーを起動
image.png

左側の接続ツリーでDefault Web Siteを右クリックし、仮想ディレクトリの追加を選択
image.png

エイリアス名と物理パスを入力(CGIスクリプトの置き場となる)
image.png

パススルー認証・接続ボタンを押し、特定のユーザーを選択し、設定ボタンを押す。
image.png

物理パスにアクセスできる権限を持ったWindowsユーザーを入力
image.png

Default Web Siteの配下に仮想ディレクトリのエントリが追加されたことを確認する
image.png

追加した仮想ディレクトリを選択し、ハンドラーマッピングを開く
image.png

ハンドラーマッピング一覧で右クリック(画面右の操作からでも可)し、スクリプト マップの追加を開く
image.png

VBSの場合、要求パスを*.vbsにする(JScriptなら*.js
実行可能ファイルはC:\%windir%\System32\cscript.exe %s %s //nologoと入力
(//nologoを入れないとHTTPヘッダにスクリプトエンジンの起動メッセージが混入してエラーが出る)
名前は任意の値で可
image.png

Default Web Siteを右クリック→Webサイトの管理→再起動をクリックし、サイトの再起動を実施する
image.png

動作確認用のスクリプトを仮想ディレクトリに設定した物理フォルダに置く
image.png
<スクリプトの中身>

test.vbs
WScript.Echo "Content-Type: text/html"
WScript.Echo
WScript.Echo "If you see this, it worked."
WScript.Echo "<br>"

If WScript.Arguments.Count > 0 Then
    For i = 0 To WScript.Arguments.Count - 1
        WScript.Echo i + 1 & " : " & WScript.Arguments(i)
        WScript.Echo "<br>"
    Next
End If

動作確認

ブラウザでhttp://<IISを設定したPCのIP>/cgi-bin/<スクリプトファイル>を開き、動作を確認する。
image.png

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?