Coś korzysta z portu 80 i nie mogę dowiedzieć się, co [zduplikować]

5

Możliwy duplikat:
Jak znaleźć exe nasłuchującego na porcie?
Do czego służy port 80?

Muszę skonfigurować lokalny serwer WWW, który utworzyłem i powiązać go z 127.0.0.1:80. Jednak nie wydaje mi się, aby dowiedzieć się, co zajmuje port 80 tego laptopa. Mam zainstalowane IIS, ale już je wyłączyłem. Teraz jednak zamiast zwykłej strony powitalnej IIS, której nie zmieniłem, przechodząc do wersji 127.0.0.1 w przeglądarce, otrzymuję:

wprowadź opis zdjęcia tutaj

Nawet jeśli przejdę do katalogów witryny, które wcześniej skonfigurowałem w IIS, nadal będzie wyświetlać ten błąd, który potwierdza moje przekonanie, że pomyślnie wyłączyłem IIS. Szukałem i znalazłem ten wątek SU i próbowałem netstat -o. Ale jak widać poniżej, nie ma PID powiązanego z portem 80, co jeszcze bardziej mnie zaskakuje.

wprowadź opis zdjęcia tutaj

Próbowałem także użyć, netstat -ab -p tcp -nale powoduje błąd. Zobacz zdjęcie poniżej.

wprowadź opis zdjęcia tutaj

Więc tak, nie mam pomysłów. Czy ktoś może mi pomóc dowiedzieć się, co używa portu 80? A także, dlaczego wydaje się, że działa serwer duchów ? Już sprawdziłem Process Explorer i XAMPP też nie działa. W rzeczywistości nie widzę niczego, co nawet przypomina serwer WWW na liście procesów. Potrafię osobiście zidentyfikować większość uruchomionych procesów, takich jak Menedżer muzyki Google, Pomocnik iTunes itp.

Dotyczy to 32-bitowej konfiguracji systemu Windows 7.

Śmigło
źródło

Odpowiedzi:

2

Konkretne rozwiązanie tego problemu:

Zatrzymaj SQL Server lub inne usługi sieciowe lub powiązane usługi IIS (tj. „SQL Server Reporting Services” - patrz odpowiedź OP w komentarzach poniżej), które mogą być uruchomione. Sprawdź swoje uruchomione usługi za pomocą 2 lub 3 poniżej. Sprawdź również komentarze, aby dowiedzieć się, w jaki sposób rozwiązujemy ten problem bardziej szczegółowo.

Osobiście poleciłbym również użycie maszyny wirtualnej z platformą LAMP, a następnie uruchomienie platformy typu WAMP bezpośrednio na twoim polu programistycznym.

Jeśli rozwiązujesz podobny problem, możesz wypróbować następujące kroki

Oto nie jest dokładne rozwiązanie, ale może pomóc, odpowiedzieć, a ja będę aktualizować, gdy będziemy:

  1. Przechwyć ruch sieciowy:

    Pobierz wireshark , zainstaluj i uruchom go. Wybierz interfejs sieciowy i zacznij przechwytywać ruch. Otwórz przeglądarkę i załaduj lokalną witrynę. Pomimo tego, że jest w interfejsie lokalnym, Wireshark powinien go przechwycić. Jeśli spojrzysz na wszystkie pola rzeczywistej odpowiedzi HTTP, możesz znaleźć nazwę aplikacji podaną na serwerze lub inne wskazówki, które pomogą ci zidentyfikować, który serwer udostępnia tę stronę. W ruchu HTTP możesz być w stanie zidentyfikować nazwę serwera. Zobacz ten wpis na Wikipedii: Lista nagłówków HTTP , zwłaszcza pole „serwer”.

    Aktualizacja: Poniższy komentarz Per Scotta Chamberlaina dotyczący przechwytywania systemu Windows z lokalnego hosta za pomocą Wireshark może być uciążliwy ( ale oto, jak to zrobić w zależności od jego komentarza). Alternatywnie patrz 5 poniżej. Zamiast tego może być łatwiejsze do pracy z narzędziem proxy, takim jak Fiddler, Paros Proxy, Burp Proxy itp., Które pozwolą ci przechwytywać ruch w obie strony, aby odczytać surowy HTTP.

  2. Monitor procesu

    Próbowałeś Process Explorer, ale Monitor procesu z sysinternals może być w tym przypadku nieco bardziej pomocny. Spowoduje to wyświetlenie plików odczytywanych podczas wykonywania czynności. Coś musiało odpowiadać.

  3. Uruchamianie procesów

    Wygląda na to, że sprawdziłeś już niektóre uruchomione procesy, ale czy sprawdziłeś wszystkie działające usługi? Możesz uzyskać informacje na temat uruchamiania usług, korzystając z jednej z poniższych opcji

    • W menu Start wpisz „services.msc” i eksploruj graficznie
    • W wierszu polecenia wpisz „tasklist / svc”
    • W wierszu polecenia wpisz „net start”
  4. Użyj narzędzia diagnostycznego http: wfetch od Microsoft

    To narzędzie może pomóc w radzeniu sobie z nieprzetworzonymi połączeniami i może być nieco łatwiejsze niż korzystanie z Wireshark, jak wspomniano powyżej, ale osiąga ten sam cel: dowiedzieć się, jakie informacje są zwracane w nieprzetworzonym ruchu HTTP.

  5. Korzystanie z narzędzi programistycznych w Chrome Oto zrzut ekranu tego, o czym mówię poniżej w komentarzach: Przykład filtrowania sieci za pomocą Narzędzi Chrome dla programistów

Eric G.
źródło
Mam tutaj Fiddler2, czy to zadziała tak samo jak wireshark?
Śmigło
Użyłem Fiddler2 i znalazłem to w surowej odpowiedzi: i.imgur.com/D1hfL.png
Śmigło
Każdy serwer proxy powinien działać, możesz także użyć narzędzi do debugowania w chrome (F12) [lub FireBug w Firefox, DragonFly w Operze]. Możesz także użyć karty „sieć”, aby wyświetlić tam nieprzetworzone nagłówki.
Eric G
Twój serwer to serwer: Microsoft-HTTPAPI / 2.0
Eric G
1
Tylko do twojej wiadomości, nie możesz przechwytywać localhost za pomocą wireshark, chyba że wykonasz dużo dodatkowej pracy
Scott Chamberlain
4

IIS nie nasłuchuje bezpośrednio żądań HTTP w nowoczesnych wersjach systemu Windows. Raczej rdzeń HTTP jest wykonywany przez sterownik http.sys. Za pomocą polecenia możesz wyświetlić aktualnie skonfigurowane adresy / porty / adresy URL

netsh http show servicestate

Jeśli nic nie jest skonfigurowane dla adresu URL /, http.syswygeneruje odpowiedź 404 NIE ZNALEZIONO, a nie zapewni jakąkolwiek konkretną aplikację lub usługę.

Richard
źródło
1
+1 Również zaakceptowana odpowiedź jest błędna.
kinokijuf
@kinokijuf +1 do twojego plus one. Nie spróbowałbym tego, gdyby nie twój komentarz. Zdecydowanie właściwa odpowiedź
Onimusha