XAMPP, Apache-ошибка: неожиданное завершение работы Apache


Я только что переустановил XAMPP, и когда я пытаюсь запустить свой сервер Apache в Панели управления XAMPP, теперь я получаю следующие ошибки:

16:50:25  [Apache]     Status change detected: running
16:50:26  [Apache]     Status change detected: stopped
16:50:26  [Apache]     Error: Apache shutdown unexpectedly.
16:50:26  [Apache]     This may be due to a blocked port, missing dependencies,
16:50:26  [Apache]     improper privileges, a crash, or a shutdown by another method.
16:50:26  [Apache]     Press the Logs button to view error logs and check
16:50:26  [Apache]     the Windows Event Viewer for more clues
16:50:26  [Apache]     If you need more help, copy and post this
16:50:26  [Apache]     entire log window on the forums

Как мне решить эту проблему?

30 271

30 ответов:

Открыть Skype.

Инструменты - > Параметры - > Дополнительно - > Подключение.

отключить "используйте порт 80 и 443 для альтернатив для входящих соединений"

выйдите из системы и закройте все окна Skype. Попробуйте перезапустить Apache.

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

как порт не используется Skype, но некоторыми другими внутренними приложениями, Я выполнил следующие шаги, чтобы решить эту проблему:

Шаг 1 - на панели управления XAMPP в разделе Apache нажмите кнопку Config и выберите Apache (httpd.conf).

внутри httpd.conf файл, как-то Я нашел строку, которая говорит:

Listen 80

и меняем 80 на любой номер порта, который вы хотите. В моем случае я использую порт 8080.

Listen 8080

все от httpd.conf, я нашел еще одну строку, которая говорит:

ServerName localhost:80

изменить 80 на 8080.

ServerName localhost:8080

Шаг 2 - на панели управления XAMPP в разделе Apache снова нажмите кнопку Config, но на этот раз выберите Apache (httpd-ssl.conf). Внутри httpd-ssl.conf файл, найти строку, которая говорит

Listen 443

и изменить 443 на любой номер порта. Я буду использовать 4433 как новый номер порта.

Listen 4433

все от httpd-ssl.conf файл, найти другую строку, которая говорит

<VirtualHost _default_:443>

ServerName localhost:443

, и 443 до 4433.

<VirtualHost _default_:4433>

ServerName localhost:4433

не забудьте сохранить httpd.conf и httpd-ssl.conf файлы после выполнения некоторых изменений. Затем перезапустите службу Apache.

одна вещь, которую вы можете сделать, это остановить службы на порту 80, выдав

net stop http

в cmd. Вас спросят, уверены ли вы, что хотите прекратить эти услуги. Я узнал, что у меня было несколько услуг, которые я не использовал и отключил их.

чтобы узнать, кто еще использует порт 80 введите cmd

netstat -abno

Я предполагаю, что вы хотите запустить Apache на порт 80. Если это так, и вы хотите сохранить конфликтующие службы, вам нужно будет связать их с новым порт.

Если проблема не является занятым портом, вы также можете попробовать следующее: выберите "Показать отладочную информацию" в панели конфигурации XAMPP. При запуске Apache вам будет показано что-то вроде "выполнение "c:\xampp\apache\bin\httpd.исполняемый." Если вы запустите это

c:\xampp\apache\bin\httpd.exe

в cmd вы получите дополнительную информацию (у меня однажды, например, была проблема с моим httpd.файл conf).

по теме: как я могу освободить свой порт 80 на localhost Windows? и Apache не будет работать в xampp

В Панели управления XAMPP V3.2.1, Нажмите на кнопку "NetStat" в правом верхнем углу. Убедитесь, что порт 80 не используется никакой другой программой. Затем нажмите на кнопку "Shell" прямо под ним. Выполните эту команду "Type ap then TAB two times"

Apache_Start.летучая мышь

вы на самом деле увидите точную ошибку, почему Apache не удалось. Это будет скорее всего проблема настройки виртуального хоста или может быть что-то еще. Он будет отображать номер строки, на которой происходит ошибка. Просто исправьте эту ошибку. Обратите внимание, что в RootDocument trailing \ также может быть источником ошибки. Удалить любой символ "\".

для более подробного ответа, регистрация здесь

выполните следующие действия:

  1. Откройте Панель управления XAMPP и нажмите ее "Config"
  2. выберите " Apache (httpd.conf) " и найдите этот код ниже и измените его на этот:

    #измените это для прослушивания определенных IP-адресов, как показано ниже

    #чтобы избежать Апачей от скачки на все привязки IP-адресов.

    #слушать 0.0.0.0:80

    #слушать [::]:80

    Listen 80

    # поддержка динамических общих объектов (DSO)

    1. сохранить (Ctrl + S)
    2. после этого вернитесь к панели управления XAMPP и снова щелкните ее конфигурацию.
    3. выберите " Apache (httpd-ssl.conf)", найдите этот код ниже и измените его снова:

    # Примечание: конфигурации, которые используют IPv6, но не IPv4-сопоставленные адреса необходимо два

    # Listen директивы: "Listen [::]:443" и "Listen 0.0.0.0: 443"

    #

    #Listen 0.0.0.0: 443

    #слушать [::]:443

    Listen 443

    1. сохранить (Ctrl + S)
    2. затем нажмите кнопку " config "(Примечание: над netstat) и нажмите кнопку"настройки сервиса и порта".
    3. измените "главный порт" на 8080 и "порт SSL" на 4433, затем сохранить его.
    4. наконец, перейдите в "Панель управления" - > "Программы и функции" - > "включить или выключить Windows".
    5. снимите флажок "информационные службы интернета" и нажмите кнопку ОК.

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

моя проблема была в том, что в httpd.конф в DocumentRoot и <Directory> записи указывали на несуществующие папки.

например, "оригинальный" httpd.у conf были следующие записи:

DocumentRoot "c:/Apache24/htdocs"
<Directory "c:/Apache24/htdocs">

если вы установили внутри C:\xampp затем вам нужно изменить эти записи, чтобы соответствовать, т. е.

DocumentRoot "c:/xampp/htdocs"
<Directory "c:/xampp/htdocs">

Если вы используете Windows 7 . Поиск IIS в Windows search (щелкните значок окна в левом нижнем углу и введите, где он говорит "поиск программы и файлов").

открыть IIS (Internet Information Service) .

в правой части панели действий. Нажмите Кнопку Стоп.

Примечание: стоп-ссылка исчезла на снимке экрана. Как я его остановил. IIS Screenshot Проблема Решена!

У меня была такая же проблема, и оказалось, что я забыл запустить setup_xampp.bat (портативная версия).

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

  1. Откройте Панель управления XAMPP.

  2. нажать на кнопку Config

  3. затем перейдите в Apache httpd.conf. Откройте его с помощью текстового редактора.

  4. искать "80" (Do Ctrl + F и найти их все. Замените его на 8080 или 4040 или 4000).

  5. сохраните файл. И перезапустить XAMPP.

Это сработало хорошо для меня, и я надеюсь, что это поможет вам тоже.

простая вещь, которую вы можете сделать, это проверить, если Skype или VMware установлен в вашей машине или нет.

Skype использует порт 80 и 443 в качестве дополнительного порта для входящих подключений. Чтобы изменить номер порта в Skype, перейдите по ссылке

Инструменты > Параметры Подключения > Подключение

в окне Skype. Теперь измените номер порта по умолчанию 80 на что-то другое.

VMware Рабочая станция использует порт 443 для обмена. Чтобы изменить это, откройте VMware Workstation и goto

Изменить > Настройки > Общие Виртуальные Машины

  1. Нажмите кнопку" Изменить настройки " buton
  2. Затем Нажмите Кнопку "Отключить Общий Доступ"
  3. затем измените используемый номер порта https (443)
  4. затем вы можете нажать кнопку" включить общий доступ"

Это все, что вам нужно сделать. Перезапустите XAMPP и запустите Apache сервер.

когда я обнаружил, что не было никакого процесса с помощью порта 80 с помощью команд

netstat -abno | find ":80"

не было проблемы с каким-либо процессом, использующим порт 80.

затем я запустил команду (в cmd)

C:\xampp\apache\bin\httpd.exe

Он показал некоторую ошибку в конфигурации виртуальных хостов в httpd-vhosts.conf файл, который был недавно отредактирован мной для установки в среде WordPress PHP в затмение IDE. Поэтому я удалил эти строки и Apache начал отлично.

для меня world wide web publishing-service использовал порт 80. Я убил это, выполнив следующую команду на cmd:

net stop http

после этого побежал в XAMPP Apache без каких-либо проблем.

эта ошибка возникает из-за того, что порт, выделенный для Apache, используется другой программой. Чтобы проверить приложение, которое использует порт, который мы выделили для Apache, его можно было, нажав кнопку,

Netstat.

XAMPP homepage

Это файл Netstat,

Enter the image description here

во-первых, я выделил порт 8080 для Apache, и я недавно установил Oracle ДЕЦИБЕЛ.TNSLSNR.exe теперь использует порт 8080.

Итак, посмотрев на этот файл мы можем выбрать порт, который не конфликтует с другими приложениями. В моем случае порт 8060 не конфликтует ни с одним приложением. Выбрав, что мы можем изменить httpd.conf файл (панель управления XAMPP -> Config), как указано выше.

  1. скачать новый xampp apachefriends
  2. установки
  3. удалить все приложения VPN
  4. открыть папку XAMPP запустить setup_xampp.летучая мышь
  5. запустить xampp-control.exe

кажется, что никто не ответил О выполнении xampp_start.исполняемый.

Я сделал все предыдущие ответы, но это не фиксированная моя проблема. Я узнал, что работает xampp_start.exe даст вам подробную информацию о проблеме.

Это я вижу на моем конце:

xampp_start

Как вы можете видеть, у меня была проблема с путем или xampp указывает на несуществующую папку.

Это произошло из-за порта по умолчанию 80 заблокирован для Apache. Вам нужно изменить порт или сделать порт доступным.

иди к своему конфигурация Apache (httpd.conf) файл в установке Apache.

найти эти строки:

#

слушать 192.168.1.2:80

слушать 80

#

здесь 192.168.1.2 - мой частный IP-адрес. Изменить его по вашим словам.

изменить, как показано ниже

слушайте 192.168.1.2: 8081

слушать 8081

теперь при доступе к localhost вы должны добавить порт явно как http://localhost:8081/...

для меня эта проблема началась, когда я разместил VPN-соединение на своем компьютере с Windows 8.

просто удаление соединения из "Панель управления\Сеть и интернет\Сетевые подключения" решена проблема.

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

localhost:8080/path_to_your_website.php

одной из причин может быть то, что вы не используете Панель управления XAMPP в качестве администратора.

Я решил проблему с остановкой службы "Web Deployment Agent Service". Открыть:система ->Управление Компьютером ->услуги -> Служба Агента Веб-Развертывания. Остановите эту службу и запустите работу XAMPP. Я думаю, что это сервис от MS Webmatrix.

(по-немецки: Systemsteuerung -> System und Sicherheit ->Verwaltung ->Dienste -> Webbereitstellungs-Agent-Dienst)

в моем случае эта проблема была вызвана попыткой загрузить другой продукт bitnami, например WordPress. Это распространено, когда мы устанавливаем WordPress через XAMPP. Он помещается в тег xampp/app каталог, к которому можно получить доступ с домашней страницы приложения XAMPP.

в качестве решения я удалил установленный по умолчанию WordPress из xampp каталог и вручную установленный WordPress в htdocs папка WordPress, загрузив его и извлекая zip-файлы в папку . вам также нужно перезапустить XAMPP или may system после удаления / удаления WordPress по умолчанию. Теперь все хорошо для меня.

У меня было то же самое сообщение об ошибке, что и OP, но моя проблема не была решена ни одним из существующих ответов. Многие из ответов касаются конфликтов на порту 80, которые, как я знал, у меня не было, так как у меня был localhost, отвечающий на порт 80 совсем недавно.

оказывается, я нечаянно изменил ServerRoot когда я намеревался изменить DocumentRoot (глупо, я знаю), и если новый ServerRoot каталог существовал, его не было содержат файлы конфигурации и другие вещи, необходимые apache, что вызвало его сбой при запуске. Сообщение об ошибке, вероятно, обращается к этому сценарию с формулировкой'отсутствующих зависимостей'.

в моей системе Windows, установка ServerRoot обратно в C:/XAMPP/apache решена проблема.

сервер Apache по умолчанию работает на портах 80, 443. Ваша проблема заключается в том, что один или оба порта заняты. Обычно Skype или VMware Workstation используют эти два порта. Так что, убедитесь, что они не работают. Лучший способ убедиться, что порты свободны в windows:

  • Нажмите кнопку windows.

  • в строке поиска введите resmon открыть Монитор ресурсов resmon.exe.

  • открыть Порты, это покажет вам открытые порты используются.

  • теперь вы можете видеть, какой процесс использует порты 80 и 443.

  • затем вы можете убить процесс либо из CMD, используя его PID (который отображается в мониторе ресурсов), либо непосредственно из Диспетчера задач.

  • чтобы убить процесс из CMD с помощью типа PID Taskkill /PID 26356 /F, где 26356-это PID.

  1. сначала убедитесь, что ваш \xampp папка находится в корне! Это важно, так как путь относителен.

  2. затем убедитесь, что вы выполните xampp_control.exe С правами администратора.

  3. затем измените файлы ниже, чтобы избежать проблем с заблокированным портом 80.

на \xampp\xampp-control.ini он должен быть установлен:

[ServicePorts]
Apache=8080
ApacheSSL=4433

найти \xampp\apache\conf\httpd.conf и

Listen 8080

ServerName localhost:8080

найти \xampp\apache\conf\extra\httpd-ssl.conf и установить:

Listen 4433

<VirtualHost _default_:4433>

ServerName www.example.com:4433

затем завершите все службы и перезапустите xampp-control.exe С правами администратора. Он должен бежать!

в моем случае это произошло после установки sql server, и решение было описано в этом ответе

Xampp-не удается запустить Apache после установки SQL Server и Visual Studio

поэтому мне пришлось просто отключить службу "SQL Server Reporting Services" из служб Windows

лучшим решением

откройте Панель управления XAMPP, нажмите на config для Apache, затем нажмите на Apache(httpd.конфигурация.)теперь в текстовом редакторе . ctrl+f --> найти "Listen 80" и заменить его на "Listen 8079" без цитат :) но теперь вы должны использовать его так http://localhost:8079/

P. S, Я попытался изменить настройки порта для skype, остановив службу агента веб-развертывания, которую я не смог найти в windows 10, cmd--> net stop http и другие методы, но ничего не работало, кроме этого .

прежде всего, вы должны убедиться, что у вас нет лишних виртуальных хостов в вашем файле httpd-vhosts. Я имею в виду следующее простое правило: 1 проект = 1 виртуальный хост в конфигурационном файле. В противном случае вы столкнетесь с ошибкой, даже если вы измените порты и т. д.

лучшее решение для пользователя windows:

  1. открыть netstat (с панели управления XAMPP)
  2. найти PID процесса, который использует порт 80.
  3. откройте CMD с помощью администратора.
  4. выполнить taskkill /pid PID (вместо того, чтобы использовать ПИД пид U нашел команды netstat)
    Эй наслаждаться ты наделала.....

Я пытался выполнить httpd.exe в cmd и получил ошибку, что есть синтаксическая ошибка в httpd-vhosts.конф. Я проверил файл и нашел, что не так, и теперь он работает нормально.

Итак, если вы столкнулись с этой ошибкой, то это может быть из-за httpd-vhosts или любого другого файла.

попробуйте выполнить программу через cmd и вы получите информацию об ошибке и строку, где ошибка синтаксиса.

удачи

у меня была та же проблема (на Windows 8.1), но я исправил ее, просто извлекая в C:\ вместо C:\somefolder Как я и сделал сначала. Так что путь к панели управления, например, сейчас C:\xampp\xampp-control.exe