Jak zmienić port serwera XAMPP Apache?

116

Oto moje ustawienia httpd.conf Apache:

Listen 8012
ServerName localhost:8012

Za każdym razem, gdy uruchamiam Apache przez XAMPP, widzę ten komunikat:

Status Check OK
Busy…
Apache Started [Port 80]

Czy ktoś może mi pomóc, czy mogę zmienić inne ustawienia?

Sathishkumar
źródło
2
śledź ten wątek. stackoverflow.com/questions/7882121/busy-apache-started-port-80/… Może ci się to przydać.
Presha

Odpowiedzi:

313

Aby odpowiedzieć na pierwotne pytanie:

Aby zmienić port serwera XAMPP Apache tutaj, wykonaj procedurę:

1. Wybierz wolny numer portu

Domyślny port używany przez Apache to 80.

Spójrz na wszystkie używane porty dzięki Netstat (zintegrowanemu z panelem sterowania XAMPP ).

Zrzut ekranu programu sterującego xampp netstat

Następnie możesz zobaczyć wszystkie używane porty, a tutaj widzimy, że 80port jest już używany przez System.

zrzut ekranu port netstat 80

Wybierz wolny numer portu ( 8012na przykład).

2. Edytuj plik „ httpd.conf

Plik ten powinien znaleźć się C:\xampp\apache\confna systemie Windows lub bin/apachedla systemu Linux .:

Listen 80
ServerName localhost:80

Zastąp je:

Listen 8012
ServerName localhost:8012

Zapisz plik.

Dostęp do: http: // localhost: 8012 w celu sprawdzenia, czy działa.

Jeśli nie, musisz edytować http-ssl.confplik zgodnie z wyjaśnieniem w kroku 3 poniżej. ↓

3. Edytuj plik „ http-ssl.conf

Plik ten powinien znaleźć się C:\xampp\apache\conf\extrana systemie Windows lub zobaczyć ten odnośnik dla systemu Linux .

Zlokalizuj następujące wiersze:

Listen 443
<VirtualHost _default_:443>
ServerName localhost:443

Zastąp je innym numerem portu ( 8013w tym przykładzie):

Listen 8013
<VirtualHost _default_:8013>
ServerName localhost:8013

Zapisz plik.

Uruchom ponownie serwer Apache.

Dostęp do: http: // localhost: 8012 w celu sprawdzenia, czy działa.

4. Skonfiguruj ustawienia serwera XAMPP Apache

Jeśli chcesz uzyskać dostęp do hosta lokalnego bez określania numeru portu w adresie URL
http: // localhost zamiast http: // localhost: 8012 .

  • Otwórz panel sterowania Xampp
  • Idź do ConfigService and Port SettingsApache
  • Zastąp wartości Port główny i Port SSL wybranymi (np. 8012I 8013).
  • Zapisz ustawienia usługi
  • Zapisz konfigurację panelu sterowania
  • Uruchom ponownie serwer Apache. port ustawień apache xampp Powinno teraz działać.

4.1. Konfiguracja przeglądarki internetowej

Jeśli ta konfiguracja nie ukrywa numeru portu w adresie URL, to dlatego, że Twoja przeglądarka internetowa nie jest skonfigurowana. Zobacz: Narzędzia ► Opcje ► Ogólne ► Ustawienia połączeń ... umożliwia wybór różnych portów lub zmianę ustawień proxy.

4.2. W rzadkich przypadkach ostatecznego pecha

Jeśli krok 4 i konfiguracja przeglądarki internetowej nie działają, jedynym sposobem na to jest zmiana z powrotem na 80 lub zainstalowanie nasłuchiwania na porcie 80 (jak proxy), które przekierowuje cały ruch na port 8012.

Aby odpowiedzieć na Twój problem:

Jeśli nadal masz ten komunikat w konsoli panelu sterowania:

Uruchomiono Apache [Port 80]

  • Znajdź lokalizację xampp-control.exepliku (prawdopodobnie w C:\xampp)
  • Utwórz plik XAMPP.INIw tym katalogu (więc XAMPP.inii xampp-control.exesą w tym samym katalogu)

Umieść w XAMPP.INIpliku następujące wiersze :

[PORTS]
apache = 8012

Teraz zawsze otrzymasz:

Uruchomiono Apache [Port 8012]

Należy pamiętać, że służy to wyłącznie do wyświetlania . To nie ma związku z twoim httpd.conf.

Antoine Subit
źródło
3
Świetna odpowiedź z przykładem.
Sujith PS
1
niesamowite! To działa jako trwałe rozwiązanie, inne sposoby (biorąc pod uwagę czasowy i być może nieprzyjemny sposób) kończą proces, który używa tych portów.
MrMins
4
Wykonałem krok 4, ale nadal nie mogę uzyskać dostępu do hosta lokalnego bez portu. Czy ktoś mógłby coś zasugerować?
MauF
2
Czy jakakolwiek aktualizacja w kroku 4, którą próbowałem, ale nie działa, nadal musi zawierać port
ßiansor Å. Ålmerol
1
@PeterCo Tak, to była literówka. Naprawię to. Dziękuję za twoją 2ct
Antoine Subit
34

Najlepszym rozwiązaniem jest rekonfiguracja serwera XAMPP Apache, aby nasłuchiwał i używał różnych numerów portów. Oto jak to robisz:

1) Najpierw należy otworzyć plik „httpd.conf” Apache i skonfigurować go do używania / nasłuchiwania na nowym porcie nr. Aby otworzyć plik httpd.conf, kliknij przycisk „Config” obok przycisków „Start” i „Administrator” Apache. W wyświetlonym menu podręcznym kliknij i otwórz plik httpd.conf

2) W pliku httpd.conf wyszukaj słowo „słuchać”. Znajdziesz dwa wiersze z czymś takim:

#Listen 12.34.56.78:80
Listen 80

Zmień numer portu na numer portu. do wyboru (np. port 1234), jak poniżej

#Listen 12.34.56.78:1234
Listen 1234

3) Następnie w tym samym pliku httpd.conf poszukaj „ServerName localhost:”. Ustaw nowy port nr.

ServerName localhost:1234

4) Zapisz i zamknij plik httpd.conf.

5) Teraz kliknij ponownie przycisk konfiguracji Apache i otwórz plik „httpd-ssl.conf”.

6) W pliku httpd-ssl.conf ponownie poszukaj „Listen”. Możesz znaleźć:

Listen 443

Zmień to, aby nasłuchiwać na nowym, wybranym przez siebie porcie. Powiedz tak:

Listen 1443

7) W tym samym pliku httpd-ssl.conf znajdź inną linię, która mówi <VirtualHost _default_:443>. Zmień to na nowy port nr. (jak 1443)

8) Również w tym samym httpd-ssl.conf można znaleźć kolejną linię określającą numer portu. W tym celu wyszukaj „ServerName”. możesz znaleźć coś takiego:

ServerName www.example.com:443 or  ServerName localhost:433

Zmień tę nazwę serwera na nowy numer portu.

8) Zapisz i zamknij plik httpd-ssl.conf.

9) Wreszcie jest jeszcze jedno miejsce, w którym należy zmienić numer portu. W tym celu kliknij i otwórz przycisk „Konfiguracja” w Panelu Kontrolnym XAMPP. Następnie kliknij przycisk „Ustawienia usługi i portu”. W nim kliknij zakładkę „Apache” i wprowadź i zapisz nowe numery portów w polach „port główny” i „port SSL”. Kliknij Zapisz i zamknij pola konfiguracji.

To powinno załatwić sprawę. Teraz „Uruchom” Apache i jeśli wszystko pójdzie dobrze, serwer Apache powinien się uruchomić.

Zobaczysz również, że port / s Apache nie w panelu sterowania XAMPP zmienił się na nowe ustawione identyfikatory portów.

Abhi Soni
źródło
bardzo przydatne. Dzięki
Jen143
3

Czy próbowałeś uzyskać dostęp do swojej strony, wpisując „ http: // localhost: 8012 ” (po ponownym uruchomieniu apache)?

jexact
źródło
1
Tak, działa na localhost: 8012, ale kiedy próbuję zdalnie z moim adresem IP mój- adres -ip: 8012 nie znaleziono strony.
Sathishkumar
1
Musisz upewnić się, że używasz publicznego adresu IP / routera, gdy używasz urządzenia, które nie jest podłączone do tej samej sieci, i upewnij się, że router wie, że ma przekazywać wszystkie żądania dla tego portu do urządzenia hostującego. Oto świetna odpowiedź na podobne pytanie, która powinna wyjaśnić, jak to zrobić. Zalecam użycie NoIP dla adresu URL, który się nie zmieni. Ponadto, dzięki NoIP możesz bezpośrednio przekierować na określony port, więc nie musisz dodawać adresu URL.
Trevin Avery,
3

Jeśli w XAMPP servertej chwili działa, zatrzymaj serwer XAMPP.

Wykonaj poniższe czynności, aby zmienić numer portu.

Otwórz plik w następującej lokalizacji.

[XAMPP Installation Folder]/apache/conf/httpd.conf

Otwórz httpd.confplik i wyszukaj ciąg:

Posłuchaj 80

To jest numer portu używany przez XAMMP.

Następnie wyszukaj ciąg ServerName i zaktualizuj numer portu, który wprowadziłeś wcześniejListen

Teraz zapisz i uruchom ponownie serwer XAMPP.

Dulith De Costa
źródło
2

Ja też miałem problem. Zmieniłem Port, ale nie mogłem zacząć na 8012.

Skype był zaangażowany, ponieważ miał ten sam port - 80. I nie mógł pozwolić apache'owi na zmianę portu.

Po prostu uruchom ponownie komputer i przed włączeniem innych programów Otwórz xampp najpierw zmień port powiedzmy z 80 na 8000 lub 8012 na tych liniach w httpd.conf

Listen 80
ServerName localhost:80

Zrestartuj xampp, uruchom apache, sprawdź localhost.

Łukasza 359
źródło
2
W rzeczywistości port Skype jest dynamiczny, może zmienić port, jeśli jest już zajęty. Prostszym rozwiązaniem jest wyjście ze Skype, a następnie uruchomienie Apache i ponowne uruchomienie Skype. Jest to operacja jednorazowa i rozwiązuje problem.
Musa Haidari
Tak, to rozwiązuje problem. Ale ci, którzy nie chcą za każdym razem restartować Skype'a, mogą z tego skorzystać.
Łukasz 359,
1

jeśli nie działa powyżej identyfikatora portu, zmień go. jak 8082,8080 Uruchom ponownie xammp, uruchom serwer apache, sprawdź, to działa.

Shyam Bhimani
źródło