web-dev-qa-db-ja.com

IISExpressのlocalhostでサブドメインを使用するにはどうすればよいですか?

現在、localhost:5252を介してローカルでMVCアプリを提供しています。

Localhostとcontoso.localhostの両方にWebアプリインスタンスを指定することで、マルチテナンシーをテストするようにアプリを設定しようとしています。

私は対応するエントリでホストファイルを設定しました:

127.0.0.1       contoso.localhost

ただし、これを機能させるために他に何をする必要があるのか​​はわかりません。 IIS Managerで何もしていませんが、移動すると標準のIIS8ページが表示されます。

すべてがIISExpressで機能しているため、IISをローカルで使用する必要がないようにしています。これを簡単に行う方法はありますか?

29
SB2055

これは、applicationHost.configファイルを編集することで実現できます。

C:\Users\yourProfile\Documents\IISExpress\config\applicationHost.config

Visual Studioは通常、構成を変更するときにこのファイルの編集を処理しますが、手動で編集することもできます。作業している特定のサイトを見つけます。次のバインディングが機能するはずです。

<bindings>
   <binding protocol="http" bindingInformation="*:5252:localhost" />
   <binding protocol="http" bindingInformation="*:5252:contoso.localhost" />
</bindings>

80を使用して入力を省くことができるように、ポートを好きなように変更できます。バインディングを追加して、必要に応じてマルチテナンシーに入力します。

詳細については、チェックアウトをお勧めします IIS Express&SSL。 に関するスコットハンセルマンのブログ投稿)==

更新

VS 2015&.NETコアでは、applicationHost.configは、グローバル構成ファイルの代わりに構成を保存するディレクトリベースのシステムに移動しました。新しい場所はプロジェクトを基準にしています。

.vs\config\applicationHost.config

同じ編集プリンシパルがこのファイルに適用されますが、TFSソース管理を使用すると、VSはブランチ間を変更するときにファイルを編集しません。 。

ドメインのワイルドカードコメントについては、 ワイルドカードホスト名はサポートされていません IIS 10.までです。したがって、IIS Express 10ですが、おそらく以前はありません。

bindingInformationの内訳は次のとおりです。

bindingInformation="<IPAddress>:<Port>:<Hostname>"

38
beavel

プロジェクトのURLを確認してください。

ソリューションエクスプローラー->プロパティ-> Webでプロジェクトを右クリックします。

サーバーの下でプロジェクトURLを探します。この値を更新して、サブドメインのURLをミラーリングします。これで問題ありません。

1
tarnold86