почему системный процесс прослушивает порт 80?

<p>я использую windows 7 rc1. у меня много проблем с тем, что iis работает в моей системе, и сегодня, когда я установил новое приложение и попытался загрузить его, используя http:\localhost\myapplication, я не получаю абсолютно никаких ошибок и не загружаю страницу. просто красивая, белая пустая страница.</p><p>я немного покопался и нашел кое-что о каком-то другом процессе, прослушивающем порт 80, поэтому я сделал сканирование с использованием <code>netstat -aon | findstr 0.0:80</code> и обнаружил, что pid 4 прослушивает этот порт.</p><p>pid 4 не отображается в диспетчере задач, поэтому я запустил process explorer, и он показал мне, что pid 4 - это системный процесс. (множественный поиск в google показывает, что система всегда использует pid 4).</p><p>с тех пор я в основном застрял. я понятия не имею, зачем системе нужен порт 80 и что с этим делать.</p><p>если вы воспользуетесь следующими строками google, вы найдете две полезные статьи experts-exchange в верхней части результатов поиска и можете прочитать их для получения полезной информации.</p><p>(если бы я дал прямой url-адрес страницам, experts-exchange попросил бы вас заплатить ... но когда вы нажмете на результаты поиска google, вы можете прокрутить весь путь до конца, чтобы прочитать обмены.)</p><p>вот поиски google ...<br> «системный процесс прослушивает порт 80 (vista)»<br> «процесс system прослушивает порт 80 и предотвращает запуск iis веб-сайта по умолчанию»</p><p>последняя запись из первого результата показала, как выполнить трассировку http.sys по следующему url:</p><p> <a href="http://blogs.msdn.com/wndp/archive/2007/01/18/event-tracing-in-http-sys-part-1-capturing-a-trace.aspx">http://blogs.msdn.com/wndp/archive/2007/01/18/event-tracing-in-http-sys-part-1-capturing-a-trace.aspx</a> </p><p>трассировка ничего полезного не показала. какие-нибудь мысли?</p>

<p>этот пост, посвященный <a href="http://web.archive.org/web/20150113180748/http://www.cameroncooke.com/2009/01/25/windows-7-uses-port-80-and-makes-it-impossible-to-install-apache-solution/">настройка apache для запуска через порт 80 в windows 7</a> (интернет-архив), описывает вашу точку зрения.</p><p>похоже, что служба <code>http.sys</code> (удаленное управление windows?) включена по умолчанию в windows 7.<br> просмотрите комментарии к этой ссылке, чтобы узнать больше ...</p><p><sub>сайт-гипс не обязательно имеет единственные ответы.</sub></p>

<p>«служба агента веб-развертывания» работает на порту 80 как система. это может быть запущено, если вы используете webmatrix.</p>

<p>откройте services.msc и остановите эту службу «службы отчетов сервера sql (mssqlserver)»</p><p> <a href="https://i.stack.imgur.com/klb1c.png"> <img src="https://i.stack.imgur.com/klb1c.png" alt="enter image description here"> </a> </p><p>я пробовал все, но это сработало для меня:</p><p>дальнейшие инструкции о том, как остановить эту службу, приведены ниже</p><ol> <li>щелкните правой кнопкой мыши на<strong> мой компьютер </strong></li> <li>выберите<strong> управление </strong></li> <li>двойной щелчок<strong> службы и приложения </strong></li> <li>затем дважды щелкните<strong> услуги </strong></li> <li>щелкните правой кнопкой мыши на<strong> «службы отчетов сервера sql (mssqlserver)» </strong></li> <li>выберите<strong> стоп </strong>... и вуаля, порт 80 был освобожден</li> </ol>

<p>вы можете временно остановить службу http из командной строки:</p><ol> <li>запустите командную строку администратора (например, «пуск», найдите <code>cmd</code>, щелкните правой кнопкой мыши по нему, выберите «запуск от имени администратора», подтвердите запрос uac, если таковой имеется).</li> <li>введите <code>net stop http</code></li> <li>если есть другие запущенные службы, которые зависят от службы http, вы получите список; перепроверьте, есть ли там что-нибудь, без чего вы не можете обойтись. или, если вы просто останавливаете http, чтобы временно использовать порт 80, запишите те зависимые службы, которые вы захотите перезапустить, как только закончите с портом. в любом случае, если все в порядке, введите <code>y</code>, чтобы продолжить.</li> <li>некоторые зависимые службы могут выдавать предупреждения управления остановом, которые отменяют операцию; просто повторяйте <code>net stop http</code> до тех пор, пока он не остановится (то есть пока не появится <code>the http service was stopped successfully.</code>)</li> <li>позже вы можете перезапустить любую из зависимых служб с помощью <code>net start</code> или с помощью пункта «службы» в разделе «администрирование», и служба http будет снова запущена автоматически.</li> </ol>

<p>telnet localhost 80 возвращает httpapi/2.0, что, в свою очередь, означает «служба отчетов сервера sql». остановка же выпускает порт 80.</p>

<p>возьмите processexplorer, запустите его, откройте свойства tcp/ip каждого процесса (службы), найдите процесс (службу), прослушивающий порт http (80), и отключите его.</p><p>я обнаружил, что autodesk edm server прослушивает порт http (80).</p>