Как использовать поддомены с localhost на IISExpress?

я обслуживаю свое приложение MVC локально через localhost: 5252 прямо сейчас.

Я пытаюсь настроить приложение для тестирования мульти-аренды, имея localhost и contoso.localhost указывает на мой экземпляр веб-приложения.

Я настроил файл hosts с соответствующей записью:

127.0.0.1       contoso.localhost
Я не уверен, что еще мне нужно сделать, чтобы сделать эту работу. Прямо сейчас я просто получаю стандартную страницу IIS8 при навигации, хотя я ничего не делал в диспетчере IIS.

Я пытаюсь избежать необходимости использовать IIS локально, так как все работает с IISExpress. Есть ли простой способ достичь этого?

2 ответов


Это может быть достигнуто путем редактирования 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, чтобы сэкономить немного ввода. Продолжайте добавлять привязки, чтобы заполнить ваш multi-tenancy по мере необходимости.

если вы ищете дополнительную информацию, я бы рекомендовал проверить сообщение в блоге Скотта Хансельмана на IIS Express & SSL.

обновление

С VS 2015 & .NET core, applicationHost.config переместился в систему хранения конфигурации на основе каталога вместо глобального файла конфигурации. Новое местоположение относительно вашего проекта:

.vs\config\applicationHost.config

те же принципы редактирования применяются к этот файл, но при использовании TFS source control VS не редактировать файл при изменении между ветвями, как это было с глобальным файлом.

Что касается комментария подстановочного знака для доменов,подстановочных знаков хоста не поддерживается до IIS 10. Поэтому он может поддерживаться в IIS Express 10, но, вероятно, не раньше.

распад bindingInformation - это:

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


попробуйте проверить настройки проекта для URL-адреса проекта.

щелкните правой кнопкой мыши на своем проекте в обозревателе решений - > свойства - > Web

найдите Url проекта под серверами. Обновите это значение, чтобы отразить url-адрес субдомена, и вам будет хорошо идти.