XAMPP - Порт 80 используется «Невозможно открыть процесс» с PID 4! 12

127

Я пытался выяснить, как исправить эту проблему в течение двух дней. Я новичок в таких вещах, поэтому я был бы признателен, если бы кто-нибудь мог сказать мне, как это исправить.

Я попытался удалить skype, но это не сработало, я попытался отключить веб-сайт во всем мире, IIS отключен, похоже, не работает.

12:51:22 PM  [Apache]   Problem detected!
12:51:22 PM  [Apache]   Port 80 in use by "Unable to open process" with PID 4!
12:51:22 PM  [Apache]   Apache WILL NOT start without the configured ports free!
12:51:22 PM  [Apache]   You need to uninstall/disable/reconfigure the blocking application
12:51:22 PM  [Apache]   or reconfigure Apache and the Control Panel to listen on a different port
  • 2
    Нет, я не собираюсь печатать это здесь, не все знают о компьютерах. Я просил о помощи, я гуглил ее, и все, что говорят люди, не работает.
  • 0
    Ах, теперь это имеет больше смысла. Попробуйте petri.co.il/quickly_find_local_open_ports.htm, чтобы узнать, кто блокирует порт 80
Показать ещё 5 комментариев
Теги:
xampp

22 ответа

264
  • Откройте приглашение CMD как администратор и выполните следующую команду: net stop was /y

  • Запустить диалоговое окно (нажмите клавиши Win+R) .. тогда введите: services.msc

Затем выполните поиск службы публикации World Wide Web (служба публикации WWW) и Служба агента развертывания веб-сайтов и остановите их. Вы также должны отключить их.

3.Начать Apache снова с помощью XAMPP:)

Ссылка Ссылка: http://www.sitepoint.com/unblock-port-80-on-windows-run-apache/

  • 13
    Я не могу найти всемирную паутину
  • 3
    Еще один способ получить доступ к сервисам - перейти в Control Panel > System and Security > Administrative tools > Services
Показать ещё 3 комментария
105

Еще один очень простой способ - просто установить Apache для прослушивания на другом порту. Это можно сделать, нажав кнопку "Конфигурация" в той же строке, что и модуль "Apache", в раскрывающемся списке выберите файл "httpd.conf", затем измените строку "Listen 80" на "Listen 8080". Сохраните файл и закройте его.

Теперь он избегает порта 80 и вместо этого использует порт 8080 без проблем. Единственная дополнительная вещь, которую вам нужно сделать, - это установить localhost:8080 в браузере, чтобы браузер знал, что нужно посмотреть на порт 8080. В противном случае по умолчанию он будет использоваться по умолчанию для порта 80 и не найдет ваш локальный сайт.

Это также потребует перезапуска Apache, чтобы изменения вступили в силу.

Voila! Фиксированный.

  • 1
    Большое спасибо, сэр!
  • 0
    Я получил принудительное обновление до Windows 10, и он сломал мою установку XAMP, этот ответ исправил это для меня. Спасибо!
Показать ещё 3 комментария
36

В httpd.conf измените следующие строки и перезапустите приложение:

  • Listen 80 to Listen 8080
  • ServerName localhost:80 to ServerName localhost:8080

Когда вы нажимаете "Старт", приложение все еще может сказать, что у вас есть ошибка, например "Порт 80, используемый" Невозможно открыть процесс "с помощью PID...", но он все равно будет работать.

Если ошибка включает "Порт 443, используемый" Невозможно открыть процесс "с помощью PID...", вам нужно изменить как httpd.conf, так и httpd-ssl.conf.

В изменении httpd-ssl.conf:

  • Listen 443 to Listen 4433
  • <VirtualHost _default_:443> to <VirtualHost _default_:4433>
  • ServerName www.example.com:443 to ServerName www.example.com:4433
33

Вам может потребоваться остановить "Агент агента развертывания веб-сайтов"

Нажмите Win + R и введите services.msc

Щелкните правой кнопкой мыши службу агента веб-развертывания и выберите "Остановить"

Перезапустить XAMPP

Также после двойного щелчка "Служба агента веб-развертывания" вы можете сделать тип запуска вручную, чтобы "Служба агента веб-развертывания" не запускалась автоматически

  • 0
    Это сработало для меня.
  • 0
    У меня тоже работало
Показать ещё 2 комментария
31

Таким образом, я столкнулся с такой же проблемой при попытке запустить службу Apache, и я хотел бы поделиться с вами своими решениями. Вот некоторые сведения об услугах или программах, которые могут использовать порт 80:

  • Skype. По умолчанию используется порт 80/443. Вы можете изменить это из Tools -> Options -> Advanced -> Connections и отключить флажок "использовать порт 80 и 443 для дополнительных входящих соединений" .

  • IIS: IIS использует порт 80 по умолчанию, поэтому вам нужно закрыть его. Вы можете использовать следующие две команды: net stop w3svc, net stop iisadmin.

  • Служба отчетов SQL Server. Вам необходимо остановить эту службу, потому что она может занять порт 80, если IIS не запущен. Перейдите в локальные службы и остановите его.

  • Рабочая станция VMware. Если вы используете VMware Workstation, вам необходимо также остановить сервер VMware Workstation - порт 443.

Эти параметры отлично работают со мной, и я могу запустить службу Apache без ошибок.

Другой вариант - изменить порт прослушивания Apache с httpd.conf и установить другой номер порта.

Надеемся, что это решение поможет всем, кто сталкивается с такой же проблемой снова.

  • 4
    У меня была служба отчетов SQL Server. Спасибо!
  • 2
    Служба отчетов SQL Server. Ты спас мой день, чувак !!! +100, если бы я мог
Показать ещё 4 комментария
31

Извлечен из статья:

  • Перейдите к команде запуска и введите:

    netstat -o -n -a | findstr 0.0:80

Последний номер здесь - это идентификатор процесса. Это чаще всего служба IIS или другого веб-сервиса, и ее легко разрешить, но каждый раз так часто (очень часто это выглядело вокруг google), похоже, это PID 4, который, согласно диспетчеру задач Windows, является ядром NT и система. Не очень полезно при убийстве, это приведет к синему экрану смерти.

То, что порт 80 для взлома не имеет ничего общего с IIS или веб-сайтом, это службы отчетов SQL Server. Отключите все, что напоминает службы SQL Server, и снова запустите Apache, нет необходимости перезагружаться.

Итак, проблемы с PID 4, слушая порт 80? Проверьте свои SQL-сервисы и отключите их.

ОБНОВЛЕНИЕ - Комментарий от @sangam:

Работал выстрелом. В моем случае это оказалось отчетность SQL-сервера Сервисы. Я остановил службу для всех установленных экземпляров и он работал (без перезагрузки компьютера).

  • 3
    Работал на выстрел. В моем случае это были службы отчетов SQL-сервера. Я остановил службу для всех установленных экземпляров, и она заработала (без перезагрузки машины). Спасибо.
  • 1
    Очень полезно .. до этого я поменял скайп порт. и закрытие служб sql мне очень помогло. Большое спасибо
Показать ещё 4 комментария
5
  • Откройте диспетчер задач (Ctrl + Alt + Delete).
  • Перейдите на вкладку "Сведения".
  • Сортировать по номеру PID.
  • Завершить процесс, который использует номер PID, указанный по ошибке.
  • Перезапустите XAMPP.
  • 1
    В моем случае это система, которая использует PID4. Поэтому это может быть опасно.
  • 0
    работал для меня, так как порт использовался моим другим сервером. И учтите комментарий @ Fusion тоже
4

Что сработало для меня, это остановка информационных служб Интернета (IIS). Если вы используете Windows 7, нажмите кнопку "Пуск" и в поле поиска введите "iis". Нажмите "Диспетчер служб IIS". Когда откроется окно и предполагается, что у вас нет ни одного из выбранных значков, вы должны просто нажать "Стоп" на правой панели действий. Мой XAMPP Apache начал работу. Надеюсь, все это сработает для вас.

  • 0
    Это работало на Windows 10 также
3

В окнах 10, чтобы освободить порт 80:

в моем случае я открываю "Службы" из "Поиск в Windows" (в левом углу экрана), а затем останавливаю все службы SQL Server MSSQLSERVER и снова работает

2

"Служба отчетов SQL Server" вызывала проблемы в моей системе, после ее остановки Apache начал нормально работать

2

У меня была такая же проблема, но в моем случае Apache уже работал, и по какой-то причине инструмент конфигурации XAMPP не показывал этого. Это произошло после того, как я начал XAMPP впервые после установки. После сбоя других экземпляров Apache все было нормально, а порты 80 и 443 снова были свободными.

Итак, прежде чем вносить изменения в вашу систему, убедитесь, что что-то очевидное, как указано выше, не происходит.

2

Если у вас есть службы отчетов SQLServer, работающие локально, вам также необходимо остановить это.

1

У меня тоже была эта проблема, и остановка сервисов с использованием порта 80 не помогла. Я решил это, выполнив эту процедуру (найденную на французская доска):

  • Запустить RegEdit
  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
  • Измените значение "start" на 4 (отключено)
  • Перезагрузите компьютер.

Не уверен, как это влияет на другие службы, но оно решило проблему постоянно, и до сих пор я не видел никаких проблем.

Использование Windows 10.

1

У меня была такая же проблема, когда я был установлен MS WebMatrix, IIS Server был заблокирован порт 80, на котором запущен XAMPP. Я попытался найти World Wide Web Publishing Service и остановить его, но не смог найти его в списке. Лучший способ - изменить порт.

Пожалуйста, обратитесь к этому
ссылка ссылка

1

Нажмите службы на панели управления Xampp (имя файла - services.msc, дополнительная информация).

Во-первых, найдите IIS, если он запущен. Остановите его (остановите эту сервисную функцию слева после нажатия на название службы.). Затем это основная проблема. Обратитесь к службе развертывания Web (не точное имя, хотя вначале оно имеет веб-развертывание). Остановите эту службу. Попробуйте еще раз, и Apache должен работать.

Если вы используете Skype, выйдите из него, запустите Apache, затем запустите Skype

  • 0
    Обычно Skype загружает порт 80, но он умнее XAMPP и использует другой порт, как только обнаружит, что 80 принадлежит Apache Server.
0

У меня такая же проблема, я решил проблему, просто отключил

"Служба BranchCache" в сервисах.

Как-то обновляется Windows, эта служба запускается при запуске и использует 80 портов. Когда вы проверяете через netstat, вы можете видеть, что система используется, но не может понять, какая служба используется.

0

XAMPP - порт 80 используется "Невозможно открыть процесс" с PID 4! 12

запустите комментарий в списке задач cmd

и найдите, какое имя PID и имя процесса связано с этим диспетчером открытых окон

вы также можете открыть диспетчер задач окна с помощью CTRL + ALT + DEL

теперь щелкните вкладку процесса и найдите имя, которое использует PID, и щелкните правой кнопкой мыши на нем и конечный процесс

теперь снова перезапустите xampp

0

Обычно он работает после того, как вы остановите IIS Server и Skype

0

Для меня обычно работает:  - Отключить Skype  - Отключить все процессы SQL Server, отображаемые в services.msc  - Отключите публикацию всемирной паутины в services.msc

0

Служба агента веб-развертывания развертывается с помощью WebMatrix и является причиной моих проблем. Он также может быть распространен с другими приложениями, установленными с помощью Установщика веб-платформы Microsoft.

Удалите его, чтобы решить мои проблемы!

  • 0
    Нет, просто измените порт, который слушает сервер.
0

если служба http.sys

Вам необходимо изменить связанный IP-адрес для http.sys

netsh http add iplisten ipaddress =::

Прекратите работу без перезагрузки os.

-1

Я пишу это, потому что я не могу найти ответ на тот же вопрос. В моем случае PID был 2484.

  • вы должны найти процесс или услугу с этим PID: откройте cmd (в Windows) и напишите:

    tasklist
    
  • Найдите свой ПИД в этом списке и прочитайте имя процесса или службы.

  • Теперь вы можете убить это, используя диспетчер задач

  • найти это имя в списке процессов

  • нажмите "Завершить процесс".

Это мое дело. Возможно, вы должны открыть services.msc и остановить службу с вашим PID.

На моем компьютере xampp он работал нормально:)

Ещё вопросы

Сообщество Overcoder
Наверх
Меню