Итак, моя проблема в том, что у меня довольно большой проект ASP.NET 3.5, который я пытаюсь запустить локально с помощью установки IIS Express. Я являюсь одним из многих разработчиков в моей команде, которые управляют этим и другими проектами, используя IIS Express, и я фактически запускаю сайт .NET 4.0 (в комплекте с локальным SSL) ежедневно без проблем. Для справки: мой компьютер работает под управлением Windows 7 Ultimate 64-разрядной версии с Microsoft Visual Studio 2010, и я являюсь администратором на локальном компьютере. Visual Studio работает с правами администратора, и я убедился, что все пулы приложений, перечисленные в inetmgr, работают.
Вот рабочий процесс, который я получаю при попытке запустить проект локально:
- Когда я запускаю свой проект в первый раз или удаляю какие-либо сайты, перечисленные в Microsoft WebMatrix (утилита конфигурации для IIS Express, аналогично inetmgr), я получаю следующую последовательность сообщений:
(1) диалоговое окно «Да-Нет» из Microsoft Visual Studio, в котором говорится:
The local IIS URL <a href="http://localhost:2000/site/path/" rel="nofollow">http://localhost:2000/site/path/</a> specified for Web project My.Web.Project has not been configured. In order to open this project the virtual directory needs to be configured. Would you like to create the virtual directory now?
(2) В этот момент я нажимаю «Да». Промежуточное окно из VS всплывает с полосой загрузки, достигает примерно 50%, а затем появляется диалоговое окно с предупреждением из VS, читающее:
Configuring Web <a href="http://localhost:2000/" rel="nofollow">http://localhost:2000/</a> for ASP.NET 3.5 failed. You must manually configure this site for ASP.NET 3.5 in order for the site to run correctly. Visual Studio cannot detect whether this virtual root has been configured for use with ASP.NET 2.0 The likely cause is that you do not have sufficient privileges to access the IIS metabase. You may need to manually configure this site for ASP.NET 2.0 in order for your site to run correctly.
(3) На данный момент я могу нажимать только «ОК» или «Справка», поэтому я нажимаю «ОК» для продолжения. Этот процесс продолжается для всех других проектов в моем решении, которые настроены для локального запуска в IIS Express. .
- Когда я пытаюсь запустить сайт локально, нажимая CTRL-F5, я получаю диалоговое окно с сообщением об ошибке:
Unable to launch the IIS Express Web Server
- Когда я пытаюсь просмотреть сведения об указанном сайте в Microsoft Web Matrix, я получаю сообщение об ошибке от WebMatrix, которое гласит:
An error caused WebMatrix to shut down. Error message: Invalid application pool name
- Это сообщение об ошибке является правильным, за исключением случаев, когда я смотрю на файл конфигурации IIS Express (C: \% User Dir% \ My Documents \ IISExpress \ config \ applicationhost.config), в разделе
<sites>
каждое приложение имеет тег <application>
с указанием только атрибута path
, без указания атрибута applicationPool
. (И наоборот, приложение 4.0, которое работает на IISExpress, имеет указанный атрибут).
- После добавления атрибута
applicationPool
на сайт я могу открывать / просматривать / редактировать его данные в WebMatrix, но все равно не могу запустить его локально.
Итак, что я делаю неправильно или какая конфигурация неверна на моей машине, которая мешает мне работать, но не у других разработчиков с таким же кодом?