豚吐露@wiki
IIS_Expressでcross-originな要求を許容したい
最終更新:
ohden
-
view
IIS Expressでcross-originな要求を許容したい
Windows 11 Pro 24H2(26100.4946)
Visual Studio Professional 2019 Version 16.11.49
IIS Express 10.0.26013.1000
Visual Studio Professional 2019 Version 16.11.49
IIS Express 10.0.26013.1000
課題
VisualStudioを用いた開発で、1つのsolutionに複数のsiteが有り、同時に起動させそのsite間でhttp通信を行うような環境を作っている場合...CORSで怒られる。
コレを許容するような設定に、設定fileやらcode修正やらで対応しようとしたが、上手くいかんかった。
なんとかdebug実行時に、project間でhttp通信を行えるようにしたいってのが目的。
なんとかdebug実行時に、project間でhttp通信を行えるようにしたいってのが目的。
対策
結局、IIS向けのCors(Cross-Origin Resource Sharing)Moduleを導入する手でなんとか実現した。
ただし、CorsModuleを入れるためには色々制約があるため、手こずった。
その家庭のmemo。
ただし、CorsModuleを入れるためには色々制約があるため、手こずった。
その家庭のmemo。
IISのinstall
IISが入って無いとCorsModuleのinstallが不可能なので、とりあえずIISを有効にする。
IISが入ってないままCorsModuleをinstallしようとすると...下のようなmessageのerror dialogが出るので注意。
IISが入ってないままCorsModuleをinstallしようとすると...下のようなmessageのerror dialogが出るので注意。
The IIS 7.0 CoreWebEngine and W3SVC features must be installed to use Microsoft CORS Module.
とりあえず、IISの導入。
スタートボタンを押して検索窓に"appwiz.cpl"と入力。"コントロールパネル項目"とか出てくるので、押下。

スタートボタンを押して検索窓に"appwiz.cpl"と入力。"コントロールパネル項目"とか出てくるので、押下。

コントロールパネルの"プログラムと機能"が表示されるので、左のlistから"Windowsの機能の有効化または無効化"を押下。


次に"Windowsの機能"ダイアログが開くので、list下部にある"インターネット インフォメーション サービス"にチェックを入れる。
チェックを入れると、"-"になるが...とりあえず、入れたいだけなので、default選択でok。

チェックを入れると、"-"になるが...とりあえず、入れたいだけなので、default選択でok。

IIS CorsModuleのinstall
過去は、動作しているweb applicationに合わせて32bit版か64bit版か選ぶ必要があった気がするんじゃが...
現在は、64bit OSだと64bit版しか入らなくなってるっぽい。
じゃ、なんで32bit版置いてあるんじゃろうか。。。どうにかして入れる方法あるんかな?
現在は、64bit OSだと64bit版しか入らなくなってるっぽい。
じゃ、なんで32bit版置いてあるんじゃろうか。。。どうにかして入れる方法あるんかな?
とりあえず、downloadした"IISCORS_amd64.msi"を実行したらすんなり入ってくれるハズ。




installが完了すると、以下にfileが配置される。
C:\Windows\System32\inetsrv\iiscors.dll
IIS ExpressへIIS Schemaのcopy
IIS ExpressでCorsModuleの有効化
更新日: 2025年09月26日 (金) 15時27分54秒