Веб-сайт MVC4 / веб-приложение Рекомендуемая структура каталогов IIS

У меня есть веб-приложение MVC4

При настройке IIS7.5 я добавил приложение на "Веб-сайт по умолчанию" и настроил виртуальный каталог в http://localhost/myApplication

Тем не менее, это заставило меня изменить многие из моих вызовов контроллера (в частности, вызовы js ajax), которые я ранее вызывал в Cassini, например, "/Home/Index", теперь мне пришлось изменить их на "/ myApplication / Home / Index", чтобы они работать на моем местном IIS.

ТЕПЕРЬ, когда я публикую его на удаленном хостинг-сервере, я должен изменить его НАЗАД на "/Home/Index", чтобы он работал.

Это не может быть наиболее продуктивным способом прохождения цикла разработки -> тестирования -> производства. Какой шаг я пропускаю?

Я пытался создать виртуальный каталог приложений только на http://localhost/ без добавления имени приложения, чтобы я мог вызывать "/Home/Index" на всех трех этапах, но он жалуется, что http://localhost/ уже сопоставлен в inetpub/wwwroot.

Спасибо за ваше время.

2 ответа

Решение

Шаги таковы:

  1. Опубликуйте свой веб-сайт в новой папке в inetpub/wwwroot (или в месте, где хранятся ваши приложения), например "inetpub/wwwroot/myapp"
  2. Перейдите в управление IIS, создайте новый веб-сайт, назначьте ему любой свободный порт (например, 11001 или что-то, по крайней мере, > 1024) и укажите его в папке, начиная с шага 1. Свяжите его со всеми доступными IP-адресами или с 127.0.0,1
  3. Запустить сайт.
  4. Получите доступ к нему, используя http://localhost:11001/ (или любой другой порт, который вы установили)

Проблема в том, что по умолчанию любой браузер использует порт 80 для запроса веб-страницы, и этот порт используется веб-сайтом по умолчанию. Вы должны вручную переопределить его или создать сайт на другом порту. IIS обычно предупреждает вас о коллизиях портов.

Если вы не хотите, чтобы в адресе был номер порта, в качестве альтернативы вы можете работать с заголовком узла на порте 80. Возможно, вам придется сделать запись локального узла для заголовка узла, предоставленного сайту.

Другие вопросы по тегам