Come cambiare la porta del server Apache XAMPP?


Risposte:


313

Per rispondere alla domanda originale:

Per cambiare la porta del server XAMPP Apache qui la procedura:

1. Scegli un numero di porta gratuito

La porta predefinita utilizzata da Apache è 80.

Dai un'occhiata a tutte le tue porte utilizzate con Netstat (integrato nel pannello di controllo XAMPP ).

Screenshot di xampp control netstat

Quindi puoi vedere tutte le porte utilizzate e qui vediamo che la 80porta è già utilizzata da System.

screenshot netstat porta 80

Scegli un numero di porta gratuito ( 8012, per questo esempio).

2. Modifica il file " httpd.conf"

Questo file dovrebbe essere trovato in C:\xampp\apache\confsu di Windows o in bin/apacheper Linux .:

Listen 80
ServerName localhost:80

Sostituiscili con:

Listen 8012
ServerName localhost:8012

Salva il file.

Accesso a: http: // localhost: 8012 per verificare se funziona.

In caso contrario, è necessario modificare il http-ssl.conffile come spiegato nel passaggio 3 di seguito. ↓

3. Modifica il file " http-ssl.conf"

Questo file dovrebbe essere trovato in C:\xampp\apache\conf\extrasu di Windows o vedere questo collegamento per Linux .

Individua le seguenti righe:

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

Sostituiscili con un altro numero di porta ( 8013per questo esempio):

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

Salva il file.

Riavvia il server Apache.

Accesso a: http: // localhost: 8012 per verificare se funziona.

4. Configurare le impostazioni del server XAMPP Apache

Se si desidera accedere a localhost senza specificare il numero di porta nell'URL
http: // localhost invece di http: // localhost: 8012 .

  • Apri il pannello di controllo Xampp
  • Vai a ConfigImpostazioni servizio e portaApache
  • Sostituisci i valori della porta principale e della porta SSL con quelli scelti (ad esempio 8012e 8013).
  • Salva le impostazioni del servizio
  • Salva configurazione del pannello di controllo
  • Riavvia il server Apache xampp apache impostazione porta Dovrebbe funzionare ora.

4.1. Configurazione del browser Web

Se questa configurazione non nasconde il numero di porta nell'URL è perché il tuo browser web non è configurato per. Vedere: Strumenti ► Opzioni ► Generale ► Impostazioni di connessione ... ti consentirà di scegliere diverse porte o modificare le impostazioni del proxy.

4.2. Per i rari casi di sfortuna definitiva

Se il passaggio 4 e la configurazione del browser Web non funzionano per te, l'unico modo per farlo è tornare a 80 o installare un listener sulla porta 80 (come un proxy) che reindirizza tutto il tuo traffico alla porta 8012.

Per rispondere al tuo problema:

Se hai ancora questo messaggio nella console del pannello di controllo:

Apache avviato [Porta 80]

  • Trova la posizione del xampp-control.exefile (probabilmente in C:\xampp)
  • Crea un file XAMPP.INIin quella directory (quindi XAMPP.inie xampp-control.exesono nella stessa directory)

Inserisci le seguenti righe nel XAMPP.INIfile:

[PORTS]
apache = 8012

Ora otterrai sempre:

Apache avviato [Port 8012]

Si prega di notare che questo è solo a scopo di visualizzazione . Non ha alcuna relazione con il tuo httpd.conf.


3
Ottima risposta, con l'esempio.
Sujith PS

1
eccezionale! Questo funziona come una soluzione permanente, altri modi per (considerando un modo temporale e forse brutto) sta terminando il processo che sta usando quelle porte.
MrMins

4
Ho seguito il passaggio 4 ma non riesco ancora ad accedere a localhost senza porta. Qualcuno potrebbe suggerire qualcosa per favore?
MauF

2
C'è qualche aggiornamento nel passaggio 4 che ho provato ma non funziona, è ancora necessario includere la porta
ßians o Å. Ålmerol

1
@ PeterCo Sì, è stato un errore di battitura. Lo aggiusto. Grazie per il tuo 2ct
Antoine Subit

34

La soluzione migliore è riconfigurare il server Apache XAMPP per ascoltare e utilizzare numeri di porta diversi. Ecco come lo fai:

1) Per prima cosa, è necessario aprire il file "httpd.conf" di Apache e configurarlo per utilizzare / ascoltare su una nuova porta n. Per aprire il file httpd.conf, fare clic sul pulsante "Config" accanto ai pulsanti "Start" e "Admin" di Apache. Nel menu a comparsa che si apre, fai clic su e apri httpd.conf

2) All'interno del file httpd.conf cercare "ascolta". Troverai due righe con qualcosa come:

#Listen 12.34.56.78:80
Listen 80

Modificare il numero di porta in un numero di porta. di tua scelta (es. porta 1234) come sotto

#Listen 12.34.56.78:1234
Listen 1234

3) Successivamente, nello stesso file httpd.conf cerca "ServerName localhost": impostalo sulla nuova porta no.

ServerName localhost:1234

4) Salvare e chiudere il file httpd.conf.

5) Ora fai di nuovo clic sul pulsante di configurazione di Apache e apri il file "httpd-ssl.conf".

6) Nel file httpd-ssl.conf, cerca di nuovo "Listen". Puoi trovare:

Listen 443

Modificalo per ascoltare su una nuova porta no di tua scelta. Dì come:

Listen 1443

7) Nello stesso file httpd-ssl.conf trova un'altra riga che dice <VirtualHost _default_:443>. Cambia questo con la tua nuova porta no. (come 1443)

8) Sempre nello stesso httpd-ssl.conf puoi trovare un'altra riga che definisce la porta n. Per quello cerca "ServerName". potresti trovare qualcosa come:

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

Modificare questo ServerName con la nuova porta n.

8) Salvare e chiudere il file httpd-ssl.conf.

9) Infine, c'è solo un altro posto in cui cambiare la porta n. Per questo, fai clic e apri il pulsante "Config" del tuo pannello di controllo XAMPP. Quindi fare clic sul pulsante "Service and Port Settings". Al suo interno, fare clic sulla scheda "Apache" e immettere e salvare i nuovi numeri di porta nelle caselle "porta principale" e "Porta SSL". Fare clic su Salva e chiudere le finestre di configurazione.

Questo dovrebbe fare il trucco. Ora "Avvia" Apache e se tutto va bene, il tuo server Apache dovrebbe avviarsi.

Vedrai anche che il numero di porte Apache nel pannello di controllo XAMPP è cambiato con i nuovi ID porta che hai impostato.


molto utile. Grazie
Jen143

3

Hai provato ad accedere alla tua pagina digitando " http: // localhost: 8012 " (dopo aver riavviato l'apache)?


1
Sì, funziona in localhost: 8012 ma quando provo in remoto con il mio indirizzo ip my-ip-address: 8012 ottenendo l'errore pagina non trovata.
Sathishkumar

1
È necessario assicurarsi di utilizzare l'IP pubblico / del router quando si utilizza un dispositivo non connesso alla stessa rete e assicurarsi che il router sappia di inoltrare tutte le richieste per quella porta al dispositivo di hosting. Ecco un'ottima risposta a una domanda simile che dovrebbe spiegare come farlo. Consiglio di utilizzare NoIP per un URL che non cambierà. Inoltre, con NoIP puoi inoltrare direttamente a una porta specifica in modo da non dover aggiungere l'URL.
Trevin Avery

3

Se XAMPP serverper il momento è in esecuzione, arrestare il server XAMPP.

Segui questi passaggi per modificare il numero di porta.

Apri il file nella seguente posizione.

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

Apri il httpd.conffile e cerca la stringa:

Ascolta 80

Questo è il numero di porta utilizzato da XAMMP.

Quindi cerca la stringa ServerName e aggiorna il numero di porta immesso in precedenzaListen

Ora salva e riavvia il server XAMPP.


2

Anch'io ho avuto problemi. Ho commutato la porta ma non sono riuscito ad avviare l'8012.

Skype è stato coinvolto perché aveva la stessa porta - 80. E non poteva lasciare che apache cambiasse la sua porta.

Quindi riavvia il computer e prima di accendere qualsiasi altro programma apri xampp prima cambia porta diciamo da 80 a 8000 o 8012 su queste righe in httpd.conf

Listen 80
ServerName localhost:80

Riavvia xampp, avvia apache, controlla localhost.


2
In realtà la porta di Skype è dinamica, può cambiare la porta se è già occupata. La soluzione più semplice è uscire da Skype, quindi avviare Apache, quindi riavviare Skype. Questa è un'operazione una tantum e risolve il problema.
Musa Haidari

Sì, risolve il problema. Ma a coloro che non vogliono riavviare Skype ogni volta possono usarlo.
Luca 359

1

se non funziona sopra l'ID della porta, modificalo. come 8082,8080 Riavvia xammp, Avvia il server Apache, Controlla. Ora funziona.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.