web-dev-qa-db-ja.com

IIS ExpressをIPアドレスにバインドする

ネットワーク上のIIS Express to Hostページを使用することは可能ですか?箱から出してlocalhostを実行できますが、IPアドレスにバインドしようとしています。

103
jdiaz

できると思う。

これを行うには、手動で applicationhost.config ファイルを編集する必要があります(bindingInformation '<ip-address>:<port>:<Host-name>'を編集)

Iisexpressを起動するには、管理者権限が必要です

104
vikomall

任意のIPアドレスでIIS Expressの回答を得るには、アドレスを空白のままにします。つまり:

bindingInformation=":8080:"

変更を行う前に、IISエクスプレスを再起動することを忘れないでください。

86

上記のように、アプリケーションHost.configを編集します。これを見つける簡単な方法は、IIS Expressを使用してVSでサイトを実行することです。システムトレイアイコンを右クリックして、すべてのアプリケーションを表示します。サイトを選択し、下部にある設定リンクをクリックして開きます。

別のバインディングエントリを追加することをお勧めします。最初のlocalhostをそこに残します。この追加のバインディングは、IIS Expressシステムトレイに、サイトの下の個別のアプリケーションとして表示されます。

VSを管理者として実行する必要がないように(管理者として実行しない理由がたくさんあります)、次のようにnetshルールを追加します(明らかにIPとポートを実際の値に置き換えます)-これにはadmin cmd.exeが必要です。一度だけ実行する必要があります:

netsh http add urlacl url=http://192.168.1.121:51652/ user=\Everyone

netshはurl = http:// +:51652 / のようなルールを追加できますが、IIS Expressでうまく配置できませんでした。 netsh http show urlaclを使用して既存のルールを一覧表示でき、netsh http delete urlacl url=blahで削除できます。

詳細: http://msdn.Microsoft.com/en-us/library/ms733768.aspx

32
Dave Glassborow

以下は、xIIS Expressを使用してx64ビットIISアプリケーションを実行し、リモートホストからアクセスできるようにするために必要な完全な変更です。

iisexpress /config:"C:\Users\test-user\Documents\IISExpress\config\applicationhost.config" /site:MyWebSite
Starting IIS Express ...
Successfully registered URL "http://192.168.2.133:8080/" for site "MyWebSite" application "/"
Registration completed for site "MyWebSite"
IIS Express is running.
Enter 'Q' to stop IIS Express

構成ファイル(applicationhost.config)には、次のセクションが追加されました。

<sites>
  <site name="MyWebsite" id="2">
    <application path="/" applicationPool="Clr4IntegratedAppPool">
      <virtualDirectory path="/" physicalPath="C:\build\trunk\MyWebsite" />
    </application>
    <bindings>
      <binding protocol="http" bindingInformation=":8080:192.168.2.133" />
    </bindings>
  </site>

.NETフレームワークの64ビットバージョンは、次のように有効にできます。

<globalModules>
    <!--
        <add name="ManagedEngine" image="%windir%\Microsoft.NET\Framework\v2.0.50727\webengine.dll" preCondition="integratedMode,runtimeVersionv2.0,bitness32" />
        <add name="ManagedEngineV4.0_32bit" image="%windir%\Microsoft.NET\Framework\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness32" />
    -->             
    <add name="ManagedEngine64" image="%windir%\Microsoft.NET\Framework64\v4.0.30319\webengine4.dll" preCondition="integratedMode,runtimeVersionv4.0,bitness64" />
11
Thomas Bratt

変更bindingInformation=":8080:"

そして、IISExpressのファイアウォールをオフにすることを忘れないでください

8
Ha Doan