Próbowałem wymyślić, jak rozwiązać ten problem przez dwa dni. Jestem nowy w tego typu sprawach, więc byłbym wdzięczny, gdyby ktoś mógł mi powiedzieć, jak to naprawić.
Próbowałem usunąć skype, ale to nie zadziałało. Próbowałem wyłączyć sieć WWW, usługi IIS są wyłączone.
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
Odpowiedzi:
Otwórz monit CMD jako administrator i wykonaj następujące polecenie:
Otwórz okno dialogowe Uruchom (naciśnij Win+ R), a następnie wpisz:
services.msc
Następnie wyszukaj usługę publikowania w sieci WWW ( usługa publikowania w Internecie ) i usługę agenta wdrażania sieci i zatrzymaj je. Powinieneś je również wyłączyć.
Uruchom Apache ponownie za pomocą XAMPP :)
Link Ref: https://www.sitepoint.com/unblock-port-80-on-windows-run-apache/
źródło
Control Panel > System and Security > Administrative tools > Services
Inną bardzo łatwą opcją jest po prostu ustawienie Apache, aby nasłuchiwał na innym porcie. Można to zrobić, klikając przycisk „Config” w tym samym wierszu co moduł „Apache”, z rozwijanego menu wybierz plik „httpd.conf”, a następnie zmień wiersz „Listen 80” na „Listen 8080”. Zapisz plik i zamknij go.
Teraz unika Port 80 i zamiast tego używa Port 8080 bez problemu. Jedyną dodatkową rzeczą, którą musisz zrobić, to umieścić
localhost:8080
w przeglądarce, aby przeglądarka wiedziała, że patrzy na Port 8080. W przeciwnym razie domyślnie jest ustawiony Port 80 i nie znajdzie twojej lokalnej strony.Będzie to również wymagać ponownego uruchomienia Apache, aby zmiana zaczęła obowiązywać.
Voila! Naprawiony.
źródło
C:/xampp
a następnie zmieniłem go na port 81. 8080 nie działało dla mnie.World Wide Web Publishing Service
nie mogę pracować z aplikacją ASP. SO zmiana portu jest dla mnie rozwiązaniem. Dzięki!W httpd.conf zmień następujące wiersze, a następnie uruchom ponownie aplikację:
Listen 80
doListen 8080
ServerName localhost:80
doServerName localhost:8080
Gdy naciśniesz „Start”, aplikacja może nadal mówić o błędzie „Port 80 w użyciu przez„ Nie można otworzyć procesu ”z PID ...”, ale nadal będzie działać.
Jeśli błąd zawiera „Port 443 w użyciu przez„ Nie można otworzyć procesu ”z PID ...”, musisz zmienić zarówno httpd.conf, jak i httpd-ssl.conf.
W httpd-ssl.conf zmień:
Listen 443
doListen 4433
<VirtualHost _default_:443>
do<VirtualHost _default_:4433>
ServerName www.example.com:443
doServerName www.example.com:4433
źródło
Wyodrębniono z tego artykułu :
Przejdź do polecenia uruchomienia i wprowadź:
netstat -o -n -a | findstr 0.0:80
Ostatnim numerem jest identyfikator procesu, który go używa. Jest to najczęściej usługa IIS lub inna usługa internetowa i jest łatwa do rozwiązania, ale co jakiś czas (bardzo często wydaje się, że rozgląda się w Google) wydaje się, że jest to PID 4 - który według Menedżera zadań systemu Windows to jądro NT i System. Niezbyt pomocne, biorąc pod uwagę zabicie, spowoduje niebieski ekran śmierci.
Port 80 nie ma nic wspólnego z usługami IIS ani czymkolwiek internetowym, to SQL Server Reporting Services. Wyłącz wszystko, co przypomina usługi SQL Server, i uruchom Apache ponownie, bez potrzeby ponownego uruchamiania.
Więc problemy z PID 4 nasłuchującym na porcie 80? Sprawdź swoje usługi SQL i wyłącz je.
AKTUALIZACJA - Komentarz od @sangam:
źródło
Tak więc napotkałem ten sam problem podczas próby uruchomienia usługi Apache i chciałbym podzielić się z Wami moimi rozwiązaniami. Oto kilka uwag na temat usług lub programów, które mogą korzystać z portu 80:
Skype : Skype domyślnie korzysta z portu 80/443. Możesz to zmienić
Tools -> Options -> Advanced -> Connections
i wyłączyć pole wyboru „użyj portów 80 i 443 dla dodatkowych połączeń przychodzących” .IIS : IIS używa portu 80 jako domyślnego, więc musisz go zamknąć. Możesz użyć następujących dwóch poleceń:
net stop w3svc
,net stop iisadmin
.SQL Server Reporting Service : Musisz zatrzymać tę usługę, ponieważ może zająć port 80, jeśli IIS nie jest uruchomiony. Przejdź do lokalnych usług i przestań.
VMware Workstation : Jeśli korzystasz z VMware Workstation, musisz zatrzymać serwer VMware Workstation - również port 443.
Te opcje działają świetnie ze mną i mogę uruchomić usługę Apache bez błędów.
Inną opcją jest zmiana portu nasłuchiwania Apache z httpd.conf i ustawienie innego numeru portu.
Mam nadzieję, że to rozwiązanie pomoże każdemu, kto ponownie napotka ten sam problem.
źródło
Może być konieczne zatrzymanie „Usługi agenta wdrażania sieci”
Naciśnij Win + R i wpisz services.msc
Kliknij prawym przyciskiem myszy usługę agenta wdrażania sieci i wybierz „Zatrzymaj”
Uruchom ponownie XAMPP
Również po dwukrotnym kliknięciu „Usługa agenta wdrażania sieci” możesz ustawić Typ uruchomienia na Ręczny, aby „Usługa agenta wdrażania sieci” nie uruchomiła się automatycznie
źródło
źródło
Ponieważ na pytanie znajduje się komentarz @johnkarka, ten port jest również używany przez usługę raportowania programu SQL Server. Po zatrzymaniu tego Apache zaczął działać poprawnie.
Zabawne jest to, że IIS działał dobrze w tej samej konfiguracji, ale nie Apache, musiał zatrzymać usługę raportowania SQL, aby działała na domyślnym porcie (80).
źródło
Dla mnie zadziałało zatrzymanie Internetowych usług informacyjnych (IIS). Jeśli używasz systemu Windows 7, kliknij przycisk Start, aw polu wyszukiwania wpisz „iis”. Kliknij „Menedżer internetowych usług informacyjnych (IIS)”. Kiedy pojawi się okno i zakładając, że nie masz żadnej wybranej ikony, powinieneś być w stanie kliknąć Zatrzymaj w prawym panelu akcji. Mój XAMPP Apache zaczął się od razu. Mam nadzieję, że wszystko się ułożyło.
źródło
W Windows 10, aby zwolnić port 80:
w moim przypadku otwieram „Usługi” z „Wyszukaj Windows” (w lewym rogu ekranu), a następnie zatrzymuję wszystkie usługi serwera SQL MSSQLSERVER i to znowu działa
źródło
Też miałem ten problem i zatrzymanie usług korzystających z portu 80 nie pomogło. Rozwiązałem go, wykonując tę procedurę (znalezioną na tablicy francuskiej ):
Nie jestem pewien, jak to wpływa na inne usługi, ale rozwiązało to na stałe problem i do tej pory nie widziałem żadnego problemu.
W systemie Windows 10.
źródło
Jeśli masz SQLServer Reporting Services działające lokalnie, musisz to również zatrzymać ...
źródło
Miałem ten sam problem, ale w moim przypadku Apache już działał iz jakiegoś powodu narzędzie konfiguracyjne XAMPP tego nie pokazało. Stało się to po pierwszym uruchomieniu XAMPP po instalacji. Po awarii innych instancji Apache wszystko było w porządku, a porty 80 i 443 były znowu wolne.
Dlatego przed wprowadzeniem zmian do swojego systemu upewnij się, że nie dzieje się coś tak oczywistego, jak powyższe.
źródło
„Usługa raportowania programu SQL Server” powodowała problemy w moim systemie, po zatrzymaniu Apache zaczął działać poprawnie
źródło
Mam ten sam problem, rozwiązałem problem, po prostu wyłączyłem
„Usługa BranchCache” w usługach.
Jakoś Windows się aktualizuje, ta usługa jest uruchamiana podczas uruchamiania i używa 80 portów. Podczas sprawdzania za pomocą netstat widać, że system jest używany, ale nie można zrozumieć, która usługa jest używana.
źródło
Po zmianie głównego portu 80 na 8080 musisz zaktualizować port w panelu sterowania: Następnie kliknij tutaj: I tutaj: Następnie zapisz i uruchom ponownie.
źródło
Kliknij usługi w panelu sterowania Xampp (nazwa pliku to services.msc, dodatkowe informacje).
Najpierw poszukaj IIS, jeśli jest uruchomiony. Zatrzymaj go (zatrzymaj tę opcję usługi po lewej stronie po kliknięciu nazwy usługi). Jest to główny problem: poszukaj usługi wdrażania w sieci (nie jest to dokładna nazwa, chociaż na początku ma ona wdrażanie w sieci). Zatrzymaj także tę usługę. Spróbuj ponownie, a Apache powinien działać.
Jeśli korzystasz ze Skype'a, wyjdź z tego, uruchom Apache, a następnie uruchom Skype
źródło
Miałem ten sam problem, kiedy zainstalowałem MS WebMatrix, serwer IIS został zablokowany na porcie 80, na którym działał XAMPP. Próbowałem znaleźć usługę publikowania w sieci WWW i zatrzymać ją, ale nie mogłem znaleźć jej na liście. Najlepszym sposobem jest zmiana portu.
Proszę odnieść się do tego
linku ref.
źródło
Dla osób z ASP.NET, C # lub posiadających użytkowników SQL Server, jeśli używasz SQlServer LUB Visual Studio Twój port może napotkać. najłatwiejszą rzeczą, którą możesz zrobić, jest polecenie Command> servies.msc, a następnie znaleźć SQl Server Reporting Service, a następnie zatrzymać ją.
źródło
jeśli usługa to http.sys
Musisz zmienić powiązany adres IP dla http.sys
Działa dobrze bez ponownego uruchamiania systemu operacyjnego.
źródło
Usługa Web Deployment Agent została wdrożona z WebMatrix i była przyczyną moich nieszczęść. Może być również rozpowszechniany z innymi aplikacjami instalowanymi za pomocą Instalatora platformy internetowej Microsoft.
Odinstaluj rozwiązało moje problemy!
źródło
Dla mnie zwykle działa: - Wyłącz Skype - Wyłącz wszystkie procesy SQL Server wyświetlane w services.msc - Wyłącz publikowanie w sieci WWW w services.msc
źródło
Zwykle działa po zatrzymaniu serwera IIS i Skype
źródło
XAMPP - Port 80 używany przez „Nie można otworzyć procesu” z PID 4! 12
uruchom komentarz w tasklist cmd
i znajdź PID i nazwę procesu związaną z tym teraz menedżerem zadań okna
możesz także otworzyć menedżera zadań okna za pomocą CTRL + ALT + DEL
teraz kliknij kartę procesu i znajdź nazwę używającą PID, kliknij prawym przyciskiem myszy i zakończ proces
teraz ponownie uruchom XAMPP
źródło
Miałem ten sam problem. Po kilku googlingach przybył na tę stronę. Ponieważ przypuszczam, że ten błąd może mieć różne przyczyny, posłuchaj mojego doświadczenia:
Dziennik czerwonej linii Xampp:
W końcu okazało się, że mam ten wiersz kodu w moich kodach php:
Celem tego fragmentu kodu było uzyskanie kopii lustrzanej wyniku php gdzieś na moim serwerze. Ale utknął w pętli, która ma własną zawartość!
Naprawiłem kod:
Potem zrestartowałem apache ... i ten błąd apache nigdy się nie powtórzył.
Dlatego czasem dobrym rozwiązaniem jest poszukiwanie prawdopodobnych punktów zatrzymania w kodzie .
źródło
W Ubuntu domyślnie system nie pozwoli ci zajmować uprzywilejowanych portów [0 do 1023], poza określeniem portu jako 80, musisz uruchomić XAMP z sudo.
źródło
Piszę to, ponieważ nie mogę znaleźć odpowiedzi na to samo pytanie. W moim przypadku PID wynosił 2484.
musisz znaleźć proces lub usługę z tym PID: otwórz cmd (w Windows) i napisz:
Znajdź swój PID na tej liście i przeczytaj nazwę procesu lub usługi.
Teraz możesz to zabić za pomocą Menedżera zadań
znajdź tę nazwę na liście procesów
kliknij Zakończ proces.
To moja sprawa. Być może musisz otworzyć services.msc i zatrzymać usługę za pomocą swojego PID.
Na moim komputerze xampp działało dobrze :)
źródło