Właśnie ponownie zainstalowałem XAMPP i kiedy próbuję uruchomić mój serwer Apache w Panelu sterowania XAMPP, teraz pojawiają się następujące błędy:
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
Jak to rozwiązać?
error.log
, zobaczyłem,PHP Warning: 'vcruntime140.dll' 14.0 is not compatible with this PHP build
co doprowadziło mnie do tej odpowiedzi . Zainstalowanie wymaganej redystrybucji rozwiązało problem.Odpowiedzi:
Otwórz Skype.
Narzędzia -> Opcje -> Zaawansowane -> Połączenie.
Odznacz pole „ Użyj portów 80 i 443 dla alternatyw dla połączeń przychodzących ”
Wyloguj się i zamknij wszystkie okna Skype. Spróbuj ponownie uruchomić Apache.
źródło
Ponieważ pracuję w środowisku korporacyjnym, w którym programiści napotykają problemy z zaporą, żadna z pozostałych odpowiedzi nie rozwiązała mojego problemu.
Ponieważ port nie jest używany przez Skype, ale niektóre inne aplikacje wewnętrzne, wykonałem poniższe kroki, aby rozwiązać problem:
Krok 1 - W Panelu sterowania XAMPP, w obszarze Apache, kliknij przycisk Config i wybierz Apache (httpd.conf).
W pliku httpd.conf w jakiś sposób znalazłem wiersz z napisem:
I zmień 80 na dowolny numer / port, jaki chcesz. W moim scenariuszu korzystam z portu 8080.
Wciąż z pliku httpd.conf znalazłem inny wiersz z napisem:
Zmień 80 na 8080.
Krok 2 - W Panelu sterowania XAMPP, w obszarze Apache, kliknij ponownie przycisk Config, ale tym razem wybierz Apache ( httpd-ssl.conf ). W pliku httpd-ssl.conf znajdź wiersz z napisem
I zmień 443 na dowolny numer / port, jaki chcesz. Będę przy użyciu 4433 jako nowy numer portu.
Nadal z pliku httpd-ssl.conf znajdź inną linię, która mówi:
I zmień 443 na 4433 .
Pamiętaj o zapisaniu plików httpd.conf i httpd-ssl.conf po wprowadzeniu pewnych zmian. Następnie uruchom ponownie usługę Apache.
źródło
Jedną rzeczą, którą możesz zrobić, to zatrzymać usługi na porcie 80 przez wydanie
w cmd. Zostaniesz zapytany, czy na pewno chcesz zatrzymać te usługi. Dowiedziałem się, że mam kilka usług, z których nie korzystałem, i wyłączyłem je.
Aby zobaczyć, kto jeszcze używa portu 80, wpisz w cmd
Zakładam, że chcesz uruchomić Apache na porcie 80. Jeśli tak jest i chcesz zachować usługi będące w konflikcie, będziesz musiał powiązać je z nowym portem.
Jeśli problem nie jest zajęty, możesz także spróbować wykonać następujące czynności: wybierz „pokaż informacje debugowania” w panelu konfiguracji XAMPP. Podczas uruchamiania Apache pojawi się komunikat „Wykonanie” c: \ xampp \ apache \ bin \ httpd.exe.
w cmd dostaniesz więcej informacji (kiedyś miałem na przykład problem z plikiem httpd.conf).
Powiązane: Jak mogę zwolnić mój port 80 na localhost Windows? i Apache nie będzie działał w Xampp
źródło
net stop http
działało, ale miało efekt uboczny polegający na tym, że drukarki nie były już wyświetlane przy próbie wydrukowania czegoś (i do ponownego uruchomienia komputera).W Panelu sterowania XAMPP V3.2.1 kliknij przycisk „NetStat” w prawym górnym rogu. Upewnij się, że port 80 nie jest używany przez żaden inny program. Następnie kliknij „Shell” tuż pod nim. Wydaj polecenie „Wpisz dwa razy AP, a następnie TAB”
W rzeczywistości zobaczysz dokładny błąd, który spowodował błąd Apache. Będzie to najprawdopodobniej problem z konfiguracją wirtualnego hosta lub może być coś innego. Wyświetli numer linii, na której występuje błąd. Napraw ten błąd. Zauważ, że w RootDocument trailing \ może być również źródłem błędu. Usuń końcowe „\”.
źródło
Wykonaj następujące kroki:
Wybierz „Apache (httpd.conf)” i znajdź ten kod poniżej i zmień go na ten:
Listen 80
Listen 443
Poczekaj na to, a komputer / laptop zostanie automatycznie uruchomiony ponownie i spróbuj ponownie otworzyć panel sterowania XAMPP, a następnie uruchom Apache.
źródło
Mój problem polegał na tym, że w httpd.conf wpisy
DocumentRoot
i<Directory>
wskazywały na nieistniejące foldery.Na przykład „oryginalny” plik httpd.conf zawierał następujące wpisy:
Jeśli zainstalowałeś w C: \ xampp, musisz zmienić te wpisy, aby pasowały, tj
źródło
Jeśli używasz systemu Windows 7. Wyszukaj usługi IIS w wyszukiwaniu systemu Windows (kliknij ikonę Okno w lewym dolnym rogu i wpisz tekst „Wyszukaj program i pliki”).
Otwórz IIS (Internet Information Service) .
Po prawej stronie w panelu działań. Kliknij Stop.
Uwaga: Łącze stop jest wyblakłe na zrzucie ekranu. Jak to zatrzymałem. Problem rozwiązany!
źródło
Control Panel > Programs > Programs and Features > Windows Components
których w końcu to rozwiązałem.net stop http
z wiersza polecenia z podwyższonym poziomem uprawnień również działało, ale efekt uboczny powodował niedostępność drukarek.Miałem ten sam problem i okazało się, że zapomniałem uruchomić
setup_xampp.bat
(wersja przenośna).źródło
To działało dla mnie ...
Jeśli używasz systemu Windows ...
Wyszukaj „cmd” w pasku wyszukiwania systemu Windows.
Wpisz to:
C:\xampp\apache\bin\httpd.exe
Znajdź plik i wiersz, w którym wystąpił błąd.
Na przykład mój był w pliku poniżej w linii 37.
Otwórz kod i napraw błąd, usuwając wiersz lub naprawiając go.
Gotowy! Powinienem teraz pracować.
:)
źródło
Wygląda na to, że nikt nie odpowiedział na temat wykonania pliku xampp_start.exe.
Zrobiłem wszystkie poprzednie odpowiedzi, ale to nie rozwiązało mojego problemu. Dowiedziałem się, że uruchomienie xampp_start.exe daje szczegółowe informacje na temat problemu.
Oto, co widzę po mojej stronie:
Jak widać, miałem problem ze ścieżką lub xampp wskazuje na nieistniejący folder.
źródło
Kiedy odkryłem, że nie było procesu korzystającego z portu 80 za pomocą poleceń
nie wystąpił problem z żadnym procesem korzystającym z portu 80.
Następnie uruchomiłem polecenie (w cmd)
pokazał błąd w konfiguracji hostów wirtualnych w
httpd-vhosts.conf
pliku, który został niedawno przeze mnie edytowany do instalacji w środowisku WordPress PHP w środowisku IDE Eclipse . Więc usunąłem te linie i Apache zaczął się idealnie.źródło
Prostą rzeczą, którą możesz zrobić, to sprawdzić, czy Skype lub VMware jest zainstalowany na twoim komputerze, czy nie.
Skype używa portów 80 i 443 jako dodatkowego portu dla połączeń przychodzących. Aby zmienić numer portu w Skype, przejdź do
w oknie Skype. Teraz zmień domyślny numer portu 80 na inny.
VMware Workstation używa portu 443 do udostępniania. Aby to zmienić, otwórz VMware Workstation i gotowe
To wszystko co musisz zrobić. Uruchom ponownie XAMPP i uruchom serwer Apache.
źródło
Kiedyś miałem ten sam problem. Miałem stary laptop, na którym prawie wszystkie porty były albo zablokowane, albo działały nieprawidłowo. Tak to zrobiłem.
Otwórz panel sterowania XAMPP.
Kliknij Config
Następnie przejdź do pliku httpd.conf Apache . Otwórz go za pomocą edytora tekstu.
Wyszukaj „80” (Wykonaj Ctrl+ Fi znajdź je wszystkie. Zamień je na 8080 lub 4040 lub 4000 ).
Zapisz plik. I uruchom ponownie XAMPP.
Dla mnie to zadziałało i mam nadzieję, że to również pomoże.
źródło
Dla mnie usługa publikowania w Internecie korzystała z portu 80. Zabiłem to, uruchamiając następującą komendę na cmd:
Następnie XAMPP bez problemu uruchomił Apache.
źródło
Ten błąd występuje, ponieważ port przydzielony dla Apache jest używany przez inny program. Aby sprawdzić aplikację, która korzysta z portu, który przydzieliliśmy dla Apache, można to zrobić, klikając,
Przycisk Netstat .
To jest plik Netstat,
Początkowo przydzieliłem port 8080 dla Apache, a ostatnio zainstalowałem Oracle DB.TNSLSNR.exe używał teraz portu 8080.
Tak więc, patrząc na ten plik, możemy wybrać port, który nie koliduje z innymi aplikacjami. W moim przypadku port 8060 nie koliduje z żadną aplikacją. Wybierając to, możemy zmienić plik httpd.conf (panel sterowania XAMPP -> Konfiguracja ), jak wspomniano powyżej.
źródło
źródło
W moim przypadku ten problem był spowodowany próbą pobrania innego produktu bitnami, takiego jak WordPress . Jest to powszechne, gdy instalujemy WordPress za pośrednictwem XAMPP. Jest on umieszczony w
xampp/app
katalogu, do którego można uzyskać dostęp ze strony głównej aplikacji XAMPP.Jako rozwiązanie usunąłem domyślnie zainstalowany WordPress z
xampp
katalogu i ręcznie zainstalowałem WordPress whtdocs
folderze WordPress, pobierając go i rozpakowując pliki zip dohtdoc
folderu. Musisz także zrestartować XAMPP lub system po odinstalowaniu / usunięciu domyślnego WordPressa . Teraz wszystko jest dla mnie OK.źródło
Najpierw upewnij się, że
\xampp
folder jest w katalogu głównym! Jest to ważne, ponieważ ścieżka jest względna.Następnie upewnij się, że korzystasz
xampp_control.exe
z praw administratora.Następnie zmień poniższe pliki, aby uniknąć problemów z zablokowanym portem 80.
W
\xampp\xampp-control.ini
nim należy ustawić:Znajdź
\xampp\apache\conf\httpd.conf
i ustaw:Znajdź
\xampp\apache\conf\extra\httpd-ssl.conf
i ustaw:Następnie zakończ wszystkie usługi i uruchom ponownie
xampp-control.exe
z uprawnieniami administratora. Powinien biec!źródło
Właśnie napotkałem ten błąd na moim Xampp v3.2.2 [win 10 pro x64],
Najpierw próbowałem uruchomić polecenie „net stop http” w admin cmd, ale to nie rozwiązało problemu, więc zacząłem wypróbowywać polecenie „netstat -abno” i dowiedziałem się, że port ssl (443) jest w używać przez vmware.
więc moja rada, nie szukaj tylko tego, co blokuje port 80, szukaj także potencjalnych programów korzystających z portu 443. ponieważ tak naprawdę nie lubię zmieniać moich domyślnych numerów portów na 8081 i 4433.
W ten sposób możesz rozwiązać ten problem ...
najpierw wpisz następujące polecenie
net stop http
następnie spróbuj uruchomić apache, jeśli nadal nie działa. wpisz następujące polecenie
netstat -abno
i na pewno dostaniesz tę kłopotliwą aplikację, która zużywa twój cenny port.
skopiuj pid, a następnie użyj następującego polecenia
taskkill /f /pid PID
gdzie PID to skopiowany pid.
Mam nadzieję, że to komuś pomaga.
źródło
Dzieje się tak z powodu domyślnego portu 80 dla Apache. Musisz zmienić port lub umożliwić dostęp do portu.
Przejdź do pliku konfiguracji Apache (httpd.conf) w instalacji Apache.
Znajdź te linie:
#
Słuchaj 192.168.1.2:80
Posłuchaj 80
#
Zmień jak poniżej
Słuchaj 192.168.1.2:8081
Słuchaj 8081
Teraz, kiedy uzyskujesz dostęp do localhost, musisz jawnie dodać port jako http: // localhost: 8081 / ...
źródło
Jedną z przyczyn może być to, że nie uruchamiasz Panelu sterowania XAMPP jako administrator.
źródło
Rozwiązałem problem z zatrzymaniem usługi „Usługa Web Deployment Agent”. Otwórz: System -> Zarządzanie komputerem -> Usługi -> Usługa Web Deployment Agent . Zatrzymaj tę usługę i uruchomienie XAMPP działa. Myślę, że to usługa MS Webmatrix.
(Niemiecki: Systemsteuerung -> System und Sicherheit -> Verwaltung -> Dienste -> Webbereitstellungs-Agent-Dienst )
źródło
Miałem dokładnie ten sam komunikat o błędzie co OP, ale żadna z istniejących odpowiedzi nie rozwiązała mojego problemu. Wiele odpowiedzi dotyczy konfliktów na porcie 80, o których wiedziałem, że ich nie mam, ponieważ ostatnio host lokalny odpowiadał na porcie 80.
Okazuje się, że nieumyślnie zmieniłem ServerRoot, kiedy zamierzałem zmienić DocumentRoot (głupie, wiem), i chociaż nowy katalog ServerRoot istniał, nie zawierał plików konfiguracyjnych i innych potrzebnych plików Apache, co spowodowało, że nie powiodło się podczas uruchamiania. Komunikat o błędzie prawdopodobnie rozwiązuje ten scenariusz poprzez sformułowanie „ brakujące zależności ”.
W moim systemie Windows ustawienie ServerRoot z powrotem na C: / XAMPP / apache rozwiązało problem.
źródło
Serwer Apache domyślnie działa na portach 80, 443. Problem dotyczy jednego lub obu portów jest zajęty. Zazwyczaj te dwa porty używają Skype lub VMware Workstation. Upewnij się, że nie działają. Najlepszym sposobem, aby upewnić się, że porty są wolne w systemie Windows, jest:
źródło
Najlepszym rozwiązaniem dla użytkownika systemu Windows jest:
taskkill /pid PID
(zamiast PID użyj pidu znalezionego z netstat)Hej, ciesz się Gotowe .....
źródło
W porządku, bez portu 80, bez winy Skype! Mój problem był rzeczywiście dość prosty (i głupi), miałem dodatkowy ukośnik odwrotny (\) (w systemie Windows) po ścieżce określonej w dyrektywie DocumentRoot, więc dokonałem takiej zmiany i problem zniknął jak zupa z kaczki .
Mój index.php był w ścieżce „D: \ sites \ dummy”, a mój httpd.conf wyglądał tak:
Więc po prostu zmień te dwie linie w ten sposób:
... i wszystko jest już w porządku. Aby uniknąć takich błędów w przyszłości, zawsze kopiuj ścieżkę do dowolnego folderu, do którego chcesz się odwoływać, zamiast wpisywać go samodzielnie.
źródło
Dla mnie ten problem zaczął się, gdy hostowałem połączenie VPN na moim komputerze z systemem Windows 8.
Po prostu usunięcie połączenia z „Panelu sterowania \ Sieć i Internet \ Połączenia sieciowe” rozwiązało problem.
źródło
Pamiętaj, że przy każdej zmianie domyślnych portów przeglądarka nie będzie o tym wiedzieć.
80
i443
wydają się być w jakiś sposób standardowe, więc na przykład, jeśli zmieniłeś się80
na8080
, będziesz musiał uzyskać dostęp do swoich stron w ten sposób:localhost:8080/path_to_your_website.php
źródło
W moim przypadku stało się to po zainstalowaniu serwera SQL i rozwiązanie było zgodne z opisem w tej odpowiedzi
Xampp - nie można uruchomić Apache po instalacji SQL Server i Visual Studio
więc musiałem po prostu wyłączyć usługę „SQL Server Reporting Services” w usługach Windows
źródło
Najlepsze rozwiązanie
otwórz panel sterowania XAMPP, kliknij config dla Apache, a następnie kliknij Apache (httpd.config) .now w edytorze tekstu. ctrl + f -> znajdź „Listen 80” i zastąp go „Listen 8079” bez cytatów :) ale teraz musisz go używać w ten sposób http: // localhost: 8079 /
PS, próbowałem zmienić ustawienia portu dla skype, zatrzymując usługę Web Deployment Agent, której nie mogłem znaleźć w Windows 10, cmd -> net stop http, i inne metody, ale nic nie działało poza tym.
źródło