Visual Studio 2015 の IIS Express にIP経由で接続する方法 | asp.net
- 2017/04/06
- 02:19
Visual Studio 2015 の IIS Express でIP経由の接続方法についてご紹介します。
通常、VisualStudio でデバッグ実行するとIEが立ち上がり、http://localhost:port番号/MyPage.aspx というURLで動作確認されていると思いますが、他の端末やブラウザからもテストしたいですよね。そこでIISの設定を変更することで自端末以外からのIP接続を受け付けれるようにすることができます。

前提条件
Windows 7 Professional 以降 / Windows Server 2008 R2 以降
Visual Studio 2015 Community 以降
1.applicationhost.config の編集
ソリューションフォルダ\.vs\config\applicationhost.configファイルを開きます。(1)画面右下のタスクトレイから IIS Express のマークを右クリックします。

(2)右クリックして「全てのアプリケーションを表示」を選択します。

(3)構成のファイルパスをクリックします。

(4)構成のパスをクリックすると VisualStudio でapplicationhost.configファイルが開きます。
追加する設定は以下の1行のみです。
<binding protocol="http" bindingInformation="*:ポート番号:IPアドレス" />
※LocalHostで設定されているポート番号と異なる番号で設定することを推奨します。
※IPアドレスはブラウザ側のIPアドレスではなく、IISExpress側のIPアドレスを入力します。
applicationhost.config
<sites>
<site name="WebSite1" id="1" serverAutoStart="true">
<application path="/">
<virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
</application>
<bindings>
<binding protocol="http" bindingInformation=":8080:localhost" />
</bindings>
</site>
<site name="TreeViewTest" id="2">
<application path="/" applicationPool="Clr4IntegratedAppPool">
<virtualDirectory path="/" physicalPath="...\TreeViewTest\TreeViewTest" />
</application>
<bindings>
<binding protocol="http" bindingInformation="*:ポート番号:localhost" />
<!-- 以下の1行を追加します。-->
<binding protocol="http" bindingInformation="*:ポート番号:IPアドレス" />
</bindings>
</site>
<siteDefaults>
<logFile logFormat="W3C" directory="%IIS_USER_HOME%\Logs" />
<traceFailedRequestsLogging directory="%IIS_USER_HOME%\TraceLogFiles" enabled="true" maxLogFileSizeKB="1024" />
</siteDefaults>
<applicationDefaults applicationPool="Clr4IntegratedAppPool" />
<virtualDirectoryDefaults allowSubDirConfig="true" />
</sites>
configファイルに追加してWebサイトを実行すると追加したIPでの待ち受けが開始されるようになります。

2.URL ACL の設定
コマンドプロンプトを管理者権限で実行し、以下のコマンドを実行します。netsh http add urlacl url=http://IPアドレス:ポート番号/ user=everyone
設定を解除する場合
netsh http delete urlacl url=http://IPアドレス:ポート番号/
設定を確認する場合
netsh http show urlacl
※applicationhost.configで追加したIPアドレスとポート番号を入力します。
※LocalHostで設定されているポート番号と異なる番号で設定することを推奨します。
3.ファイアウォールの設定
受信ポートは上記で設定したポート番号、受信IPも上記で設定したIPにて Windows FireWall またはサードパーティのファイアウォールの設定を許可にしてください。以上で他の端末からのHTTP接続が可能です。
尚、設定しているポート番号がIPとLocalHostで同じだと、VSからデバッグ実行してもIE上では何も表示されず、IPベースのURLに変更してあげると正常に表示ができます。ポート番号を1つずらすなど、異なるポート番号で設定すると共存が可能です。
最後までお読みいただきありがとうございます。
いかがでしたでしょうか。他にも asp.net に関連する記事を投稿しておりますのでよろしければご参考くださいませ。
- 関連記事
-
- スマホを判別して特定のURLにリダイレクトする方法 | asp.net
- セッションハイジャック対策がされているか確認する方法 | asp.net
- Visual Studio 2015 の IIS Express にIP経由で接続する方法 | asp.net
- ぺージロード時のスクリプト処理順序について | asp.net
- DIVで囲れたコントロールを横並びに配置しスクロールを表示する方法 | asp.net
Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly のエラーが出力されビルドができない件 | Xamarin.Forms ホーム
ITエンジニアがたまに使用するレジストリの設定について | Windows