fc2ブログ

記事一覧

Visual Studio 2015 の IIS Express にIP経由で接続する方法 | asp.net


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


iisexpress_04.png



前提条件
Windows 7 Professional 以降 / Windows Server 2008 R2 以降
Visual Studio 2015 Community 以降



1.applicationhost.config の編集

ソリューションフォルダ\.vs\config\applicationhost.configファイルを開きます。

(1)画面右下のタスクトレイから IIS Express のマークを右クリックします。

iisexpress_01.png


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

iisexpress_02.png


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

iisexpress_03.png

(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での待ち受けが開始されるようになります。

iisexpress_06.png 



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 に関連する記事を投稿しておりますのでよろしければご参考くださいませ。


関連記事

コメント

コメントの投稿

※名前とタイトルが入力されていないコメントでは他のコメントとの区別ができません。

 入力されていないコメントには返信しませんのであらかじめご了承くださいませ。

※ニックネームでも良いので必ずご入力ください。

    

※必ずご入力ください。

    
    

※必ずご入力ください。

※技術的な質問には環境やエラーについて正確かつ詳細にお教えください。

・正確なエラーの内容

・Windowsのバージョン番号

・Visual Studioのバージョン

・機器の型番

・アプリやソフトのバージョン

    

カテゴリ別記事一覧

広告

プロフィール

石河 純


著者名 :石河 純
自己紹介:素人上がりのIT技術者。趣味は卓球・車・ボウリング

IT関連の知識はざっくりとこんな感じです。
【OS関連】
WindowsServer: 2012/2008R2/2003/2000/NT4
Windows: 10/8/7/XP/2000/me/NT4/98
Linux: CentOS RedHatLinux9
Mac: macOS Catalina 10.15 / Mojave 10.14 / High Sierra 10.13 / Sierra 10.12 / OSX Lion 10.7.5 / OSX Snow Leopard 10.6.8
【言語】
VB.net ASP.NET C#.net Java VBA
Xamarin.Forms
【データベース】
Oracle 10g/9i
SQLServer 2016/2008R2/2005/2000
SQLAnywhere 16/11/8
【BI/レポートツール】
Cognos ReportNet (IBM)
Microsoft PowerBI
ActiveReport (GrapeCity)
CrystalReport
【OCX関連】
GrapeCity InputMan SPREAD MultiRow GridView
【ネットワーク関連】
CCNP シスコ技術者認定
Cisco Catalyst シリーズ
Yamaha RTXシリーズ
FireWall関連
【WEB関連】
SEO SEM CSS jQuery IIS6/7 apache2

休みの日は卓球をやっています。
現在、卓球用品通販ショップは休業中です。