Порт 80 використовується системою SYSTEM (PID 4), що це?


346

Я намагаюся використовувати порт 80 для свого сервера додатків, але коли я виконую, netstat -aonя отримую:

TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4

Коли я дивлюся на цей процес в диспетчері завдань, він показує PID 4це SYSTEM, це все . Без розширення ... нічого. Просто " SYSTEM". Що тут відбувається?

Боюся закінчити цей процес, що мені робити?


ОНОВЛЕННЯ :

Я вирішив це через інше запитання про переповнення стека , в якому було вирішено отримати IIS, щоб перестати слухати порт 80 за вказаною IP-адресою.


Те саме питання на сайті superuser superuser.com/questions/352017/pid4-using-port-80 та superuser.com/questions/43307/…
Gábor Imre

1
Для майбутніх читачів було б корисно прочитати serverfault.com/questions/65717/… , щоб зрозуміти, чому деякі відповіді, розміщені нижче, працювали (але жодна з відповідей не перейшла на рівень деталізації).
Лекс Лі

Відповіді:


37

IP-адреса - 0,0.0,0, стан = СПИСОК: означає, що порт 80 прослуховує всі інтерфейси (не використовується)

Як читати результати NETSTAT -AN:


61
"означає, що порт 80 прослуховує всі інтерфейси (не використовуються)" не точно - сервіс "World Wide Web Publishing Service" слухав у цьому порту. Як тільки ви вручну зупините його, ви можете звільнити цей порт (принаймні, в Windows 7)
деспот

33
Просто для уточнення, Всесвітня послуга веб-видавництва - W3SVC. Припинення цієї послуги вирішує мою проблему.
daniel__

20
Зупинення та відключення служби W3SVC працює і для мене: sc stop w3svcтодіsc config w3svc start= disabled
dugloon

1
Це посилання ( devside.net/wamp-server/… ) допомогло мені звузити винуватців і нарешті знайти те, що я шукав. Прикро цей пост stackoverflow не з'являвся в моїх пошуках, поки я не вирішив його.
DangerPaws

3
СПИСОК використовуваних засобів. Це означає, що існує процес, що використовує цей конкретний порт, очікуючи вхідних дзвінків. Я намагався запустити веб-сайт за замовчуванням, і IIS сказав мені, що є ще один процес використання порту 80. Найбільш голосована відповідь - відповідь про "Службу агента веб-розгортання" (MsDepSvc) - є кращим поясненням того, що відбувається.
Мірча Іон

285

Нова послуга під назвою "Агент сервісу веб-розгортання" (MsDepSvc) також може викликати "Система" з PID = 4 для прослуховування на порту 80.


4
У мене була точно така ж проблема, як і оригінальний плакат. Відповідь Антонія вирішила мою проблему, оскільки у мене не працювали служби звітування. Нещодавно я встановив WebMatrix, тому, можливо, "Сервіс веб-розгортання агента" був встановлений як частина цього пакету. У будь-якому випадку, припинення цієї служби звільнило порт 80. Мені здавати порт 80 подібним здається мені досить нахабним.
voam

7
Тут, здається, йдеться про WebMatrix
Джонатан

5
Так, я можу підтвердити з Джонатаном, що після встановлення WebMatrix (та її залежностей через інсталятор веб-платформи Microsoft) з’являється сервіс «Сервіс агента веб-розгортання». Дійсно використовувати порт 80, особливо, якщо ви також запускаєте сервер Apache / IIS у тому ж полі.
Антоній

Щоб тимчасово зупинити MsDepSvc, перейдіть до запуску -> "Services.msc", клацніть правою кнопкою миші на службі агента веб-розгортання, натисніть "Зупинити".
timofey.com

Ви можете змінити URL-адресу для MsDepSvc (служба агента веб-розгортання) тут: HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ services \ MsDepSvc \ Параметри
Grynn

251

Є багато сервісів, які можуть слухати порт 80 на Windows.

На щастя, ви можете виявити та зупинити їх, коли вони виконують просту команду консолі:

NET stop HTTP

Коли ви розпочнете його, ви спочатку отримаєте список: введіть тут опис зображення

Щоб уникнути цієї проблеми в майбутньому, перейдіть до локальних служб та відключіть перелічені служби .

Примітка. Деякі служби негайно перезапустяться, просто запустіть "NET stop HTTP" кілька разів .


3
ПРИМІТКА ... запустіть cmd як адміністратор
boi_echos

3
Це зупинить службу спілера, а також відповідає за принтери.
Рахман

7
Я пропустив тонкий факт, що вам спочатку представлений список запущених служб та вибір, щоб продовжувати зупиняти їх. Це дозволило мені побачити, що працює, вибрати, щоб не зупиняти їх усіх, а потім знайти підозрювану службу на моїй панелі "Сервіси", зупинити її та встановити її на посібник. Рішення Антона чудово. Легке запам’ятовування та використання.
Perry Tew

1
@barlop це дійсно дивний спосіб реагувати на людей, які намагаються вам допомогти
Антон Пурін

2
Краще команди, щоб знайти винуватця: netsh http show urlaclі netsh http show servicestate(шукайте всіх, хто має: 80 в них.) Джерело: devside.net/wamp-server/…
Аюб

241

Крім того, спробуйте зупинити "Служби звітування SQL Server (MSSQLSERVER)", які, мабуть, за замовчуванням до 80. Я це зробив і порт 80 звільнився. PID визнав винуватця як "Система", але очевидно, що Система може означати кілька речей.


5
Служби звітування SQL Server також прослуховували порт 80 в моїй системі. Дякую!
afournier

2
Я почав бачити цей порт 80 після встановлення сервера MSSql і не усвідомлював його, поки не побачив ваше рішення. Після припинення обслуговування все добре зараз. Дякую.
Дамодар Башіял

4
Змініть "URL-адресу веб-служби" та "URL-адресу веб-порталу" в "Менеджер конфігурації служб звітування" для, скажімо, порту 82 :-)
Франсуа Бретон

87

У мене була така ж проблема. Не вдалося це виправити, зупинивши Службу публікацій всесвітнього веб-сайту під запущеними службами.


чудові роботи, зупиняючи агента служби веб-розгортання в службах на Windows 7 professional.
user606669

Це працює, але також зупиняє мою можливість розміщення сайтів на інших портах через IIS.
Камберлен

Це не спрацювало для мене на Windows Server 2012 R2. Сервіс, мабуть, навіть не існує, тому я не можу закінчити процес.
Мартін Ерлік

30

Схоже, IIS прослуховує порт 80 для HTTP-запитів.

Спробуйте зупинити IIS, зайшовши в Панель керування / Адміністративні інструменти / Інтернет-сервіси інформації, клацніть правою кнопкою миші на веб-сайті за замовчуванням та натисніть на опцію "Стоп" у спливаючому меню і перевірте, чи очистився слухач на порт 80


Це було в моїй системі IIS, але назва сервісів була "WWW-Publishingdienst" (німецька?)
Олів'є Фашо

28

Це працює для мене:

  1. Клацніть правою кнопкою миші на Мій комп'ютер .
  2. Виберіть Керувати .
  3. Двічі клацніть Служби та програми .
  4. Потім двічі клацніть Послуги .
  5. Клацніть правою кнопкою миші на " Служба видавничих послуг у світі ".
  6. Виберіть Стоп .

1
На кроці 5 моя проблема була зі службою звітування SQL Server. Я це вимкнув і проблема вирішена. Раніше я відключив послуги WWWPublishing, але це не вирішило проблему.
Август

ReportServer $ SQLEXPRESSS2016 робив це на моєму ПК.
Ліам Мітчелл

25

Я дізнався, що "Служби звітування SQL Server (MSSQLSERVER)" запускається автоматично і прослуховує порт 80.

Я сподіваюся, що це допомагає.

О


23

ТЕСТОВАНІ РОБОТІ РІШЕННЯ: (ВІННІ 10)

Для цього існує багато розумних рішень, одна з яких я рекомендувала:

ВІДКРИТИ ВІННУ КОМАНДУ З ПЕРЕДБАЧЕННЯМ АДМІНІСТРАТОРУ:

net stop http /y

вищезгадане погодиться припинити послугу http:

sc config http start= disabled

вище буде налаштовано сервіс для відключення за замовчуванням

ЯКЩО ЗА РЕШЕННЯМ НЕ РОБОТА, ЗНАЙТИ ТУТ СПЕЦИФІЧНИЙ СПРАВУ:

ДЖЕРЕЛ: http://www.devside.net/wamp-server/opening-up-port-80-for-apache-to-use-on-windows

РЕСТАРТАЙТЕ СВОЄМУ веб-серверу / XAMPP / APACHE І ЗРОБИТИ.


Якщо вам коли-небудь потрібно повторно включити за замовчуванням, ось команда, sc config HTTP start= demandджерелом пояснення є тут http://servicedefaults.com/10/http/


15

Інша послуга, яка могла б зайняти порт 80, - BranchCache

services.msc, показуючи це як "BranchCache"

або скористайтеся командою net, щоб зупинити подібну послугу

чиста зупинка PeerDistSvc

Оновлення:

PeerDistSvc - це служба, що стоїть за svhost.exe, для перегляду типу служб svchost

tasklist / svc / fi "imagename eq svchost.exe"


це працювало і для мене - в описі служби йдеться: BranchCache - Ця служба кешує мережевий вміст від однолітків у локальній підмережі.
xorcus


Ця стаття вирішила мою проблему з BranchCache
Аміт Бекенштейн


8

Я знав, що ці відповіді були правильними, але в службі.

sc stop "MsDepSvc" 
sc config "MsDepSvc" start= disabled 

5

Це можна легко виправити, виконавши наступні п'ять кроків:

  1. Відкриті сервіси
  2. Клацніть правою кнопкою миші на сервісі видавництва World Wide Web
  3. Клацніть STOP

Щоб запобігти цій проблемі в майбутньому:

  1. Перейдіть до Властивості
  2. Змініть тип запуску на « Ручний»

Віола у вас добре їхати!


1
Саме те, що мені потрібно. Дякую.
Данг Конг Дуонг

4

Я щойно отримав цю проблему сьогодні, оскільки вона з’явилася після того, як Нортон просив перезавантажити, я звинувачував Нортона.
Але це був не Нортон, я видалив Нортона, перезавантажив -> проблема все ще є.

netstat -nao показував, що PID 4 володіє моїм портом 80.

Потім я перейшов до панелі керування, потім "Увімкнення та вимкнення функцій Windows", потім не встановлено прапорці Інтернет-сервісів інформації.
Перезавантажившись, проблема пішла.
Мій сервер xampp зараз працює нормально.

Я ніколи не пам’ятаю в першу чергу включення IIS. Я бігав багато місяців до того, як це сталося. Я досі не знаю, що це спричинило. Можливо, попереднє оновлення Windows включило iis, і моя перезавантаження увімкнула його, я не знаю.


4

Цей процес працює для мене:

  1. Клацніть правою кнопкою миші на Мій комп'ютер.
  2. Виберіть Керувати.
  3. Двічі клацніть Служби та програми.
  4. Потім двічі клацніть Служби.
  5. Клацніть правою кнопкою миші на "Служба видавничих послуг у світі".
  6. Виберіть Стоп
  7. Перезапустіть XAMPP

3

У мене була така ж точна проблема, за винятком того, що я ніколи не використовував IIS. Поки я виправляв ще одну системну помилку, я встановив службу apache на ручний запуск, сподіваючись зменшити складність моєї системи. Після того, як я виправив іншу помилку, апарат не запустився. Я деякий час мчав, але все, що потрібно, було повернення автоматичного автоматичного запуску apache: Пуск> Адміністративні інструменти> Послуги.

Мабуть, коли Apache починає таким чином, він вимагає порт 80, перш ніж процес SYSTEM може.

hth хтось. весь мій googling виявив "не можуть мати IIS та Apache на одній машині". це для інших один відсоток з нас.


2

Спробуйте netstat -b, який може сподіватися пролити трохи ситуації на ситуацію (показуючи, що .exe використовує порт). Удачі.


це навіть не відображалося в netstat -b, дивно, але все одно я вирішив це, шукайте оновлення.
GiH

-1 PID з 4 не використовує. C: \ blah> netstat -abon | більше "Active Connections TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4 Can not obtain ownership information" та після натискання кнопки "Показати процеси для всіх користувачів" у Windows 7 диспетчері завдань, менеджер завдань перелічує "Система" для PID від 4.
barlop

2

Для мене це спрацювало після припинення роботи агента веб-розгортання.


2

Якщо ви використовуєте продукт Razer та встановите на свій ПК програмне забезпечення Razer Synapse, він також блокує порт 80.

Вона не входить до netstatкоманди, тому я не в змозі її усунути. Оскільки в програмі є багато служб, я не можу проаналізувати, який з них блокує порт. Після видалення Razer Synapse я можу знову запустити сервер Apache в Windows 10.


Дякую, я думаю, що це Razer Chroma SDK Server. Я відключив його в msconfig, і це вирішило проблему для мене!
Стефан

1

Це не пояснює PID-сторону речей, але якщо ви запускаєте Skype, він любить використовувати порт 80 чомусь.


Я зіткнувся з тією ж проблемою, порт 80 придбаний NT Kernal. Але коли я запускаю Apache на порту 80, він це робить (коли він налаштований як служба запуску при запуску). Але коли я зупиняю Apache і намагаюся запустити Tomcat на порт 80, Windows 7 не дозволяє. Ядро NT або Skype не повинні використовувати стандартний порт веб-сервера.
Асиф Шахзад

ви можете змінити порти за замовчуванням для скайпу з його налаштувань "З'єднання"
Zee

1

У моєму випадку це сталося після встановлення Microsoft Web Matrix. Видалення цього сміття разом із "Веб-розгортанням Microsoft" виправлено проблему.


1

Я роздивлявся PID 4 і прийшов до цього питання. З цієї відповіді та публікації в блозі я зрозумів, що все, що стосується PID 4, ймовірно, є сервісом Windows, тому ви, можливо, захочете шукати відповідні служби в services.msc.

Також цим процесом керує Система, яка вважається іншим користувачем, який "увійшов у систему".


1

У мене була така ж проблема, і це через те, що IIS працює на сервері, ви можете зупинити її за допомогою IIS Manager, якщо це у вас справа.



1

Я зупинив World Wide Web Publishing Service, і тоді це спрацювало.


1

Жоден із них не працював на мене. Мені довелося перейти до питання SuperUser .

Якщо це системний процес - PID 4 - вам потрібно відключити драйвер HTTP.sys, який запускається на вимогу іншою службою, наприклад, віддаленим управлінням Windows або спонсором друку в Windows 7 або 2008.

Є два способи відключити його, але перший безпечніший:

    • Перейдіть до диспетчера пристроїв, виберіть у меню / перегляді пункт «показати приховані пристрої», перейдіть до «Non-Plug and Play Driver» / HTTP, двічі клацніть його, щоб відключити його (або встановіть його вручну; деякі сервіси залежали від нього).

    • Перезавантажте та використовуйте netstat -nao | find ":80"для перевірки, чи 80 все ще використовується.

Це той, який працював на мене!


Ви можете додати другий, більш небезпечний спосіб її відключення, для повноти.
крижана вода


0

Для мене мені довелося видалити "Агент віртуального робочого столу Citrix" на моєму комп'ютері


GoToMeeting також є CitrixOnline, просто видаліть
KingRider

0

PID = 4 не відображається в диспетчері завдань навіть після встановлення галочки на "Показати процеси від усіх користувачів". Ну, є лише один користувач.

Однак netstat -b показує безліч з'єднань, що вказують на той самий PID = 4, який на цьому комп'ютері відображає наступне.

введіть тут опис зображення

Я вибрав лише ті, що стосуються протоколу TCP.

Це було отримано під час зйомки проблем IIS, які не почалися після випробування багатьох інших. Я не думаю, що ви повинні зупиняти цей процес.


0

тип netstat -a -n -b -o |more

якщо зупинка World Wide Web Publishing Serviceдопомагає

потім в менеджері IIS перегляньте параметри прив’язки кожного сайту , вибравши сайт і на бічній панелі натисніть на прив’язку. потім замініть порт 80 на щось інше, якщо потрібно.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.