Visual Studio 2012 IIS Express 8 Fresh Install - не удается подключиться
В Visual Studio 2010 + IIS Express 7 я смог использовать IIS Express в качестве сервера и просматривать сайты.
С тех пор я установил Visual Studio 2012 (в Windows 7 64-bit) с IIS Express 8, и я не могу просматривать один сайт на нем. Кроме того, когда я смотрю файлы журнала (\ Logs и \TraceLogFiles), я даже не вижу ни одной записи в журнале для каких-либо приложений 2012/IISExpress 8, не говоря уже об ошибке, чтобы посмотреть.
Глядя на applicationhost.config, я вижу сайт, на котором я пытаюсь запустить правильный путь, apppool и порт.
Но при попытке запустить его, запускается IIS Express 8, я получаю необычно длинную паузу, а затем получаю сообщение о невозможности подключения в браузере. То есть, в IE9 я получаю "Internet Explorer не может отображать веб-страницу" в Chrome "К сожалению, Google Chrome не смог подключиться к localhost: 60046"
Кто-нибудь еще сталкивается с этим? Есть ли что-то, что мне нужно сделать, чтобы завершить настройку IIS Express 8 с помощью VS2012?
ОБНОВЛЕНИЕ 2 марта 2013
Это еще не разрешено, но здесь приведен список симптомов и частичных решений.
IIS Express полностью не работает
Первоначально я не смог подключиться к IIS Express при любых условиях. Оказалось, что у меня было 2 проблемы, одна из которых относится к DNS, а другая - к ошибке в Visual Studio 2012.
Проблема 1: Windows DNS
Я установил подключение к Wi-Fi Windows для использования DNS-серверов Google, вместо того, чтобы оставлять его в автоматическом режиме. Это отлично работает с:
- IIS
- Cassini (внутренний веб-сервер Visual Studio)
- Почти что-нибудь еще
Это не сработало с:
- IIS Express при попытке подключения к локальному хосту - он не может подключиться, даже при запуске IIS Express из командной строки, без участия Visual Studio.
Решение заключалось в том, чтобы вернуть мои настройки DNS в "Автоматический" (и вместо этого переключить мой маршрутизатор на использование Google DNS).
Проблема 2: ошибка в Visual Studio 2012 Microsoft еще не подтвердила
Это привело меня к тому, что IIS Express отлично работает из командной строки, и единственная оставшаяся проблема связана с ним из Visual Studio 2012. Cassini и IIS (не Express) из VS2012 работают нормально, включая localhost и те же проекты, которые не работают в IIS Express.
Однако, когда я пытаюсь выполнить работу с IIS Express, появляется значок значка IIS Express, минута проходит, когда Visual Studio выглядит замороженным, а затем значок в трее исчезает, и в Visual Video появляется такое же сообщение об ошибке, как показано в этом вопросе Студия:
Отладка приложения MVC в VS2012 пытается дважды запустить IIS Express
Одна особенность заключается в том, что если я щелкнул правой кнопкой мыши значок в трее и попытался открыть браузер против него во время минутного замораживания, я получаю веб-приложение - он запускается в течение одной минуты и работает по назначению. Затем он умирает, когда Visual Studio, по-видимому, убивает его.
Однако я не могу подтвердить, что IIS Express работает в два раза чаще, чем в w.brian. Тем не менее, это может быть то же самое, что и ошибка Visual Studio 2012, показывающая очень немного разные симптомы.
Ошибки и брандмауэр Microsoft. Я сообщил об этой проблеме Microsoft. Они начали диагностировать его со мной, но потом сказали мне, что мне нужно заплатить 250 долларов, чтобы продолжить - что-то, что я не готов сделать, чтобы помочь им исправить свои ошибки.
Об этом сообщается несколько сообщений об ошибках:
Мой исходный отчет об ошибке:
http://connect.microsoft.com/VisualStudio/feedback/details/766233/
Во-вторых, они заставили меня открыть навигационную систему:
http://connect.microsoft.com/VisualStudio/feedback/details/779161/
Отчет об ошибке w.brian:
https://connect.microsoft.com/VisualStudio/feedback/details/778864/
Но я подозреваю, что это все тот же самый баг, который Microsoft игнорирует с помощью платежной системы между своими клиентами и ними, не позволяя им на самом деле собирать достаточно деталей, чтобы распознать там ошибку.
С тем, что Microsoft тратит впустую достаточно времени, я перешел к использованию обычного IIS в качестве обходного пути.
Это абсолютное последнее. Извините всех.
Обновление 8/2013: Машина, которая испытывала эту проблему, с тех пор умерла (что-то пролило), и моя новая машина не имеет этой проблемы. Я предложил Microsoft обратиться к другим людям с этой проблемой. Здесь может быть смысл комментировать, если вы все еще испытываете проблему, чтобы знать, как с вами связаться. И помните, что вы можете редактировать вопросы StackOverflow, поэтому вы всегда можете просто обновить этот вопрос, указав дополнительную информацию о диагнозе.
Ответы
Ответ 1
Я обнаружил проблему на своей машине.
Когда я проверил файл C:\Windows\system32\drivers\etc\hosts, у меня не было
127.0.0.1 localhost
в файле. Я помню, как он менялся "временно", чтобы устранить проблему. Добавление обратно в пропавшую запись исправило мою проблему.
Вы можете проверить, какой IP-адрес ваш компьютер считает, что localhost - это просто ping localhost
и убедитесь, что 127.0.0.1 пингован, а не какой-либо другой IP-адрес.
Ответ 2
Вы проверяли, произошла ли регистрация привязок http для вашего сайта? (запуск команды "netsh http show servicestate" из командной строки будет показывать все зарегистрированные привязки и проверить, существует ли привязка вашего сайта "localhost: 60046" )
если привязка вашего сайта не существует, попробуйте выполнить проверку сбоя регистрации привязок.
- Откройте командную строку
- Перейти к папке установки IIS Express (% programfiles%\iis express)
- Запустите свой сайт из командной строки, используя следующую командную строку
iisexpress.exe/site: "your-site-name" /trace: d
- Шаг 3 покажет сообщение об ошибке, если регистрация привязок не удалась.
Ответ 3
У меня была аналогичная проблема с запуском моего проекта asp.net MVC4 на localhost под IIS express 8.0, поэтому я закончил удаление IIS 8.0 и установил IIS express 7.5, и сразу проблема была исправлена:
IIS Express 8.0, похоже, установлен с VS 2012, поэтому, если у вас была новая установка или, возможно, обновление пакета обновления, возможно, она обновила предыдущую версию IIS.
Ответ 4
Я знаю, что на этот вопрос ответил оригинальный плакат, но для тех, кто попадает сюда через google, вот возможное решение ваших проблем: HTTPS перестала работать с IIS express
Ответ 5
Если у кого-то еще есть эта проблема - убедитесь, что привязки веб-сайтов в applicationhost.config относятся к действительным адресам.
У меня было это сообщение, когда applicationhost.config привязывался к определенному IP-адресу, но этот IP не был действителен для хоста в это время (у меня был внутренний IP-адрес сети, назначенный через резервирование DHCP, но я был в другой сети).
Ответ 6
Я решил свои проблемы с IIS, установив WebMatrix (скачать). Я запустил WebMatrix, открыл сайт в WebMatrix, и IIS заработал отлично. Закрыл WebMatrix и запустил сайт ASP.NET MVC в VS, и он сработал.