Невозможно запустить сервер разработки ASP.NET, поскольку используется порт «1900» - PullRequest
23 голосов
/ 01 февраля 2009

Я отлично развивался в VS 2008 и тестировал свой веб-сайт ASP.NET на своем сервере разработки, когда внезапно я больше не смог запустить свой веб-сайт. Как только я нажму F5, появится сообщение:

Невозможно запустить сервер разработки ASP.NET, так как используется порт «1900».

Неважно, на какой порт я меняю, он всегда используется. Я пробовал:

  • Изменение номера порта
  • Перезапуск Visual Studio
  • Перезагрузка моей машины
  • Установка IIS

Подсказка: мой IIS отказывается запускаться. Но у меня не было установленного IIS, когда я счастливо работал раньше, так что это, вероятно, не проблема; это может быть просто выделение чего-то еще.


Обновление: после перезагрузки IIS запускается, но проблема здесь сохраняется.

Ответы [ 17 ]

35 голосов
/ 11 сентября 2012

Просто завершите все процессы Webdev.WebServer.exe - сделали свое дело для меня. Иногда это «невозможно запустить, потому что порт используется», возникает, когда один из процессов Visual Studio (webdev.webserver.exe) все еще работает и заблокирован. Процесс (ы) webdev.webserver должен завершаться, когда вы закрываете браузер или приложение, но если они этого не делают (например, мой Visual Studio аварийно завершил работу, но если веб-сервер оставался работающим), это может заблокировать порт, что предотвратит запуск Visual Studio. ваш проект. Когда вы пытаетесь выполнить F5 своего приложения (запустить приложение из Visual Studio), оно конфликтует с текущим используемым портом и указанным выше ', потому что порт XYZ используется ' отображается ошибка.

Итак, чтобы это исправить: в строке состояния (рядом с часами Windows) щелкните правой кнопкой мыши и «Остановите» все значки сервера разработки ASP.net. Вы также можете открыть диспетчер задач и уничтожить все процессы webdev.webserver.exe.

enter image description here

9 голосов
/ 01 февраля 2009

Вы можете проверить, какое программное обеспечение работает на данном порту, запустив netstat -o из командной строки. Это даст идентификатор процесса (PID) процесса. У меня такое было после установки Skype, который был привязан к порту 80 раньше, чем IIS смог.

Вы также можете проверить журнал событий для сообщений, почему IIS не запускается. Это может дать достаточно информации для решения проблемы или для поиска в Google.

5 голосов
/ 05 июля 2011

Проблема была решена, и я настроил брандмауэр NOD32, чтобы он больше не видел VS как браузер.

Настройка> Антивирус и AntiSpy> Защита Интернета> HTTP

Просто снимите отметку с vs, и проблема будет решена.

Надеюсь, это наконец поможет.

3 голосов
/ 07 октября 2009

У меня была такая же проблема в течение длительного времени. Я проверил все идеи, написанные здесь. В конце концов, единственное, что сработало для меня, было:

  1. Выгрузите проект, щелкнув его правой кнопкой мыши.
  2. Открытие файла .csproj правой кнопкой мыши по незагруженному проекту
  3. Перезагрузка проекта (без изменений)

Иногда это решает проблему ...

Однако у меня также есть обходной путь:

  1. Откройте командную строку Visual Studio 2008 (Пуск-> Microsoft Visual Studio 2008 -> Инструменты Visual Studio -> Командная строка).
  2. Тип: webdev.webserver.exe /port:[your_port] /path:"[your_path]"
    your_port - желаемый порт для сервера, your_path - путь, в котором VS хранит ваш исходный файл. Обратите внимание, что вам нужно вставить только каталог, в котором находится файл .asmx .
  3. Это должно запустить сервер вручную и прослушивать указанный порт.
3 голосов
/ 01 февраля 2009

Щелкните правой кнопкой мыши на маленькой «серверной странице», запущенной на панели задач, и нажмите «Закрыть». Обычно это происходит, когда процесс DEBUG неожиданно завершается или происходит сбой в Visual Studio. Попробуйте действительно высокий порт, такой как 50000, и посмотрите, работает ли он. Там не должно быть никаких процессов, использующих этот порт.

2 голосов
/ 20 мая 2012

Я нашел решение, которое не требует перезагрузки (для Windows 7).

Рядом с часами есть лоток с иконками, который доступен, если щелкнуть значок треугольника рядом с флагом. Найдите значок с подсказкой «Сервер разработки ASP.net - порт ###». Щелкните правой кнопкой мыши и выберите «Стоп»!

1 голос
/ 01 февраля 2009

Одна вещь, которую я пробовал в прошлом, когда происходило подобное, - это подключение к порту через telnet и выполнение GET или HEAD:

telnet localhost 1900

Затем введите HEAD и нажмите ввод. Иногда возвращаемые данные показывают что-то вроде имени сервера или имени приложения.

1 голос
/ 09 ноября 2010

Просто убедитесь, что на боковой панели запущены два экземпляра vs2008 ..:)

1 голос
/ 03 июля 2016

Для сайта веб-форм:

  1. Удалить проект из решения.
  2. Отредактируйте% userprofile% \ Documents \ IISExpress \ config \ applicationhost.config и удалите раздел для проблемного порта.
  3. Добавьте проект обратно в решение.
0 голосов
/ 03 июля 2017

В части проекта на веб-сайте щелкните правой кнопкой мыши и выполните «Окно свойств» НЕ «Страницы свойств» Измените «Использовать динамические порты» на ИСТИНА. Вы можете оставить там 80, если указан порт - ключ к использованию динамических портов.

...