Pull to refresh

Отладка веб-приложений в IIS Express

Reading time 2 min
Views 9.1K
iis7 Для тех, кто не хочет ждать официальной поддержки IIS Express в Visual Studio, есть простой способ прикрутить возможность отладки самостоятельно.

Все, что нам понадобится — это скачать WebMatrix beta, в который входит IIS Express(отдельно скачать пока нет возможности).



Ставим IIS Express


После установки WebMatrix находим и редактируем файл «My Documents\IISExpress8\config\applicationhost.config».
Переходим к 145й строке и создаем еще одно определение сайта по образу и подобию WebSite1, удалив атрибут serverAutoStart:
Copy Source | Copy HTML
  1. <site name="WebSite1" id="1">
  2.     <application path="/">
  3.         <virtualDirectory path="/" physicalPath="%IIS_SITES_HOME%\WebSite1" />
  4.     </application>
  5.     <bindings>
  6.         <binding protocol="http" bindingInformation=":8080:localhost" />
  7.     </bindings>
  8. </site>
  9. <site name="VSDebug" id="2">
  10.     <application path="/" applicationPool="Clr4IntegratedAppPool">
  11.         <virtualDirectory path="/" physicalPath="c:\dev\mysite" />
  12.     </application>
  13.     <bindings>
  14.         <binding protocol="http" bindingInformation=":8421:localhost" />
  15.     </bindings>
  16. </site>

Думаю значения измененных атрибутов очевидны, так что пропустим их описание.
Настало время запустить наш сервер. Сделать это можно следующей командой:

"C:\Program Files (x86)\Microsoft WebMatrix\iisexpress.exe" /site:{YOUR_SITE_NAME}

Вместо {YOUR_SITE_NAME} нужно подставить имя вашего сайта, которое вы указали в applicationhost.config. В моем случае это VSDebug. Если все сделано правильно, то сервер запустится и ваш сайт будет доступен.

Настраиваем Visual Studio


Запускаем студию и загружаем в нее наш сайт. Делаем правый клик по проекту, выбираем Properties и переходим на таб Web. Здесь нам нужно выбрать Start External Program и указать команду запуска нашего сервера.



Ниже, в этом же окне, выбираем Use Custom Web Server и снова вводим URL сайта.



В разделе Debuggers снимаем все флажки, т.к. студия будет пытаться приаттачиться к IIS и не позволит нам выполнять отладку.



Теперь сохраняем свойства и жмем F5, чтобы запустить отладку. Открыть сайт в браузере можно воспользовавшись иконкой IIS Express в трее.



P.S. На описание этого процесса меня сподвигла следующая статья Kamran Ayub. Однако думаю, что описанный мной способ несколько проще и избавляет от необходимости руками перезапускать сервер и аттачиться к нему.
Tags:
Hubs:
Total votes 48: ↑33 and ↓15 +18
Comments 5
Comments Comments 5

Articles