「[[マイクロソフト系技術情報 Wiki>http://techinfoofmicrosofttech.osscons.jp/]]」は、「[[Open棟梁Project>https://github.com/OpenTouryoProject/]]」,「[[OSSコンソーシアム .NET開発基盤部会>https://www.osscons.jp/dotNetDevelopmentInfrastructure/]]」によって運営されています。 -戻る --[[IIS]] --[[Express関連]] * 目次 [#if397cdc] #contents *概要 [#m075d719] -WebMatrixから[[Visual Studio]]標準同梱へ。 -昨今、高度な開発用Webサーバが無いと厳しいこともあり。 *詳細 [#t7b6a02e] **各種設定 [#wb65ed64] applicationhost.configに設定する。 -基本的には、Projectファイルから自動的に設定が行われる。 -必要に応じて、applicationhost.configを手書き修正する。 ***Visual Studio 2015以前 [#ede0d70d] 以下に格納される。 C:\Users[ユーザ名]\Documents\IISExpress\config\ ***Visual Studio 2015以降 [#ze440973] 以下に格納される。 [ソリューションのディレクトリパス]\.vs\config\ **32bit、64bit [#eab271a5] ***Projectファイル [#e2931d5b] 以下の様な設定を行う(VS2017から?)。 <UseIISExpress>false</UseIISExpress> <Use64BitIISExpress /> ***[[Visual Studio]] [#c7dfa604] [[Visual Studio]]のメニューから、[ツール] -> [オプション]~ > -> [プロジェクトおよびソリューション] -> [Web プロジェクト]~ > -> [Web サイトおよびプロジェクト用 IIS Express の64ビット バージョンを使用] をON ***レジストリ [#s8789866] |#|項目|値|h |1|キー|HKEY_CURRENT_USER¥Software¥Microsoft¥VisualStudio¥xx.0¥WebProjects| |2|値名|Use64BitIISExpress| |3|データ|1| **localhost以外 [#h54a2427] 可能らしい。 ***Docker [#z5960401] -Dockerから接続する場合「[[host.docker.internal>Docker for Windowsのネットワーク設定#o0ae51ae]]」が使用できる。 -以下の様に「applicationhost.config」に定義を追加する。 --AS-IS <binding protocol="https" bindingInformation="*:44300:localhost" /> --TO-BE <binding protocol="https" bindingInformation="*:44300:localhost" /> <binding protocol="https" bindingInformation="*:44300:host.docker.internal" /> ***ポイント [#s7564fb6] -[[上記の例>#z5960401]]は、Uri.Authority = localhost:44300の場合。 -host.docker.internalは、以下の様に名前解決される。 --コンテナ側は、192.168.65.2 --ホスト側は、192.168.0.6 ***参考 [#o496dfb3] -IIS Expressでlocalhost以外のアドレスでアクセスする方法 - なか日記~ https://blog.nakajix.jp/entry/2014/09/19/022536 -IIS Express で仮想サイトに複数のホスト名を割り当てる - しばやん雑記~ https://blog.shibayan.jp/entry/20130306/1362572283 **外部公開 [#z5c9b9ad] 可能らしいが、潔く[[IISにデプロイ>ASP.NET Coreのデプロイ#r51d5558]]した方が早そう。 可能らしいが、潔く[[IISにデプロイ>ASP.NET Coreのデプロイ#r51d5558]]した方が早そう。~ (HTTPS化でLets’s Encryptの証明書を発行する等の色々があるので) ***ポイント [#zfac03d7] -bindingInformationに設定しても、hostsに設定してもイイらしい。 -以下は、ホスト外からアクセスする場合に必要 --Windows Defender ファイアウォールを無効化するか、通す。 --[[Visual Studio]]を管理者実行で実行する。~ 管理者実行しない場合は、以下コマンドを実行してURL予約(Win10ではダメ? > netsh http add urlacl url=http://fqdn name:xxxxx/ user=Everyone ***参考 [#jd0a11d0] -Qiita --IIS Express を外部公開する~ https://qiita.com/ledsun/items/ca77c60aad424438cdd7 --Visual Studio 2015のIIS Expressに~ localhost以外からアクセスできるようにする方法~ https://qiita.com/k_saito/items/790884389e0c0611b258 **SSL設定 [#e3024cbb] 可能らしい。 -お楽しみはこれからだ!: IIS ExpressでSSLを有効にしてデバッグ~ http://takepara.blogspot.com/2011/04/iis-expressssl.html **クライアント証明書 [#g454a719] 可能らしい。 -[[コチラ>ASP.NET+クライアント証明書#sf697402]]を参照。 *ハマリ [#h80f414e] **SSLポート範囲 [#ldc7278d] 44300 - 44399 の範囲しか設定できないらしい。 -asp.net mvc - IIS Express defaulting to port 44300 for https when enabling SSL - Stack Overflow~ https://stackoverflow.com/questions/3690901/iis-express-defaulting-to-port-44300-for-https-when-enabling-ssl *参考 [#q8a508a3] -IIS Expressの紹介 - @IT~ https://www.atmarkit.co.jp/fdotnet/scottgublog/20100702iisexpress/iisexpress.html -[改訂版]IIS 7.5 Express について – monoe's blog~ https://blogs.msdn.microsoft.com/osamum/2011/01/19/iis-7-5-express/ **Microsoft Docs [#i8eb0762] -Using the Windows System Tray to Manage Websites and Applications~ https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/using-the-windows-system-tray-to-manage-websites-and-applications -Running IIS Express from the Command Line~ https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-from-the-command-line -Running IIS Express without Administrative Privileges~ https://docs.microsoft.com/en-us/iis/extensions/using-iis-express/running-iis-express-without-administrative-privileges ---- Tags: [[:Windows]], [[:IIS]], [[:.NET開発]], [[:ツール類]]