¿Cómo cambiar el puerto del servidor XAMPP apache?

116

Esta es mi configuración httpd.conf de Apache:

Listen 8012
ServerName localhost:8012

Cada vez que inicio Apache a través de XAMPP, veo este mensaje:

Status Check OK
Busy…
Apache Started [Port 80]

Alguien, por favor ayúdenme, ¿puedo cambiar otras configuraciones?

Sathishkumar
fuente
2
sigue este hilo. stackoverflow.com/questions/7882121/busy-apache-started-port-80/… Puede que le resulte útil.
Presha

Respuestas:

313

Para responder a la pregunta original:

Para cambiar el puerto del servidor XAMPP Apache aquí el procedimiento:

1. Elija un número de puerto libre

El puerto predeterminado utilizado por Apache es 80.

Eche un vistazo a todos sus puertos usados con Netstat (integrado en el Panel de control de XAMPP ).

Captura de pantalla de xampp control netstat

Luego puede ver todos los puertos usados ​​y aquí vemos que el 80puerto ya está siendo usado por System.

captura de pantalla netstat puerto 80

Elija un número de puerto libre ( 8012, para este ejemplo).

2. Edite el archivo " httpd.conf"

Este archivo debe encontrarse en C:\xampp\apache\confel de Windows o bin/apachede Linux .:

Listen 80
ServerName localhost:80

Reemplácelos por:

Listen 8012
ServerName localhost:8012

Guarda el archivo.

Acceda a: http: // localhost: 8012 para comprobar si funciona.

De lo contrario, debe editar el http-ssl.confarchivo como se explica en el paso 3 a continuación. ↓

3. Edite el archivo " http-ssl.conf"

Este archivo debe encontrarse en C:\xampp\apache\conf\extrael de Windows o ver este enlace para Linux .

Busque las siguientes líneas:

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

Reemplácelos por otro número de puerto ( 8013para este ejemplo):

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

Guarda el archivo.

Reinicie el servidor Apache.

Acceda a: http: // localhost: 8012 para comprobar si funciona.

4. Configure los ajustes del servidor Apache XAMPP

Si desea acceder a localhost sin especificar el número de puerto en la URL
http: // localhost en lugar de http: // localhost: 8012 .

  • Abrir el panel de control de Xampp
  • Vaya a ConfiguraciónConfiguración de puerto y servicioApache
  • Reemplace los valores del puerto principal y del puerto SSL con los elegidos (por ejemplo, 8012y 8013).
  • Guardar la configuración del servicio
  • Guardar configuración del panel de control
  • Reinicie el servidor Apache. puerto de configuración xampp apache Debería funcionar ahora.

4.1. Configuración del navegador web

Si esta configuración no oculta el número de puerto en la URL es porque su navegador web no está configurado para. Consulte: Herramientas ► Opciones ► General ► Configuración de conexión ... le permitirá elegir diferentes puertos o cambiar la configuración del proxy.

4.2. Para los raros casos de mala suerte final

Si el paso 4 y la configuración del navegador web no le funcionan, la única forma de hacerlo es volver a cambiar a 80 o instalar un oyente en el puerto 80 (como un proxy) que redirija todo su tráfico al puerto 8012.

Para responder a su problema:

Si aún tiene este mensaje en la consola del Panel de control:

Apache iniciado [puerto 80]

  • Encuentra la ubicación del xampp-control.exearchivo (probablemente en C:\xampp)
  • Cree un archivo XAMPP.INIen ese directorio (entonces XAMPP.iniy xampp-control.exeestán en el mismo directorio)

Pon las siguientes líneas en el XAMPP.INIarchivo:

[PORTS]
apache = 8012

Ahora, siempre obtendrás:

Apache inició [Puerto 8012]

Tenga en cuenta que esto es solo para fines de visualización . No tiene ninguna relación con tu httpd.conf.

Antoine Subit
fuente
3
Gran respuesta, con ejemplo.
Sujith PS
1
¡increíble! Eso funciona como una solución permanente, otras formas de (considerando una forma temporal y tal vez desagradable) es finalizar el proceso que está usando esos puertos.
MrMins
4
Seguí el paso 4 pero todavía no puedo acceder a localhost sin puerto. ¿Alguien podría sugerir algo?
MauF
2
Es cualquier actualización en el paso 4 He intentado pero no el trabajo, todavía tienen que incluir el puerto
ßiansor Å. Ålmerol
1
@PeterCo Sí, fue un error tipográfico. Lo arreglo. Gracias por su
2ct
34

La mejor solución es reconfigurar el servidor XAMPP Apache para escuchar y usar diferentes números de puerto. Así es como se hace:

1) Primero, debe abrir el archivo Apache “httpd.conf” y configurarlo para usar / escuchar en un nuevo puerto no. Para abrir el archivo httpd.conf, haga clic en el botón "Configuración" junto a los botones "Inicio" y "Administrador" de Apache. En el menú emergente que se abre, haga clic y abra httpd.conf

2) Dentro del archivo httpd.conf, busque "listen". Encontrarás dos filas con algo como:

#Listen 12.34.56.78:80
Listen 80

Cambie el puerto no por un puerto no. de su elección (por ejemplo, puerto 1234) como a continuación

#Listen 12.34.56.78:1234
Listen 1234

3) A continuación, en el mismo archivo httpd.conf, busque “ServerName localhost:” configúrelo en el nuevo número de puerto.

ServerName localhost:1234

4) Guarde y cierre el archivo httpd.conf.

5) Ahora haga clic en el botón de configuración de Apache nuevamente y abra el archivo “httpd-ssl.conf”.

6) En el archivo httpd-ssl.conf, busque "Escuchar" nuevamente. Puedes encontrar:

Listen 443

Cámbielo para escuchar en un nuevo puerto de su elección. Di como:

Listen 1443

7) En el mismo archivo httpd-ssl.conf busque otra línea que diga <VirtualHost _default_:443>. Cambie esto a su nuevo número de puerto. (como 1443)

8) También en el mismo httpd-ssl.conf puede encontrar otra línea que define el puerto no. Para eso, busque "ServerName". puede encontrar algo como:

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

Cambie este ServerName a su nuevo número de puerto.

8) Guarde y cierre el archivo httpd-ssl.conf.

9) Finalmente, solo hay un lugar más en el que debe cambiar el número de puerto. Para eso, haga clic y abra el botón "Configuración" de su Panel de control XAMPP. Luego haga clic en el botón "Configuración de puerto y servicio". Dentro de él, haga clic en la pestaña "Apache" e ingrese y guarde los nuevos números de puerto en los cuadros "puerto principal" y "puerto SSL". Haga clic en guardar y cierre los cuadros de configuración.

Eso debería hacer el truco. Ahora “Inicie” Apache y si todo va bien, su servidor Apache debería iniciarse.

También verá que el puerto Apache no en el panel de control de XAMPP ha cambiado a los nuevos ID de puerto que configuró.

Abhi Soni
fuente
muy útil. Gracias
Jen143
3

¿Ha intentado acceder a su página escribiendo " http: // localhost: 8012 " (después de reiniciar el apache)?

jexact
fuente
1
Sí, está funcionando en localhost: 8012 pero cuando intento de forma remota con mi dirección IP my-ip-address: 8012 obteniendo el error de página no encontrada.
Sathishkumar
1
Debe asegurarse de que está utilizando la IP de su enrutador / público cuando usa un dispositivo que no está conectado a la misma red, y asegurarse de que su enrutador sepa reenviar todas las solicitudes para ese puerto al dispositivo de alojamiento. Aquí hay una gran respuesta a una pregunta similar que debería explicar cómo hacer esto. Recomiendo usar NoIP para una URL que no cambiará. Además, con NoIP puede reenviar directamente a un puerto específico, por lo que no necesita agregar la URL.
Trevin Avery
3

Si se XAMPP serverestá ejecutando por el momento, detenga el servidor XAMPP.

Siga estos pasos para cambiar el número de puerto.

Abra el archivo en la siguiente ubicación.

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

Abra el httpd.confarchivo y busque la Cadena:

Escuchar 80

Este es el número de puerto que usa XAMMP.

Luego busque la cadena ServerName y actualice el número de puerto que ingresó anteriormente.Listen

Ahora guarde y reinicie el servidor XAMPP.

Dulith De Costa
fuente
2

Yo también tuve un problema. Cambié el puerto pero no pude comenzar en 8012.

Skype estuvo involucrado porque tenía el mismo puerto, 80. Y no podía permitir que apache cambiara su puerto.

Así que simplemente reinicie la computadora y antes de encender cualquier otro programa Abra xampp primero cambie el puerto, digamos de 80 a 8000 o 8012 en estas líneas en httpd.conf

Listen 80
ServerName localhost:80

Reinicie xampp, inicie apache, verifique localhost.

Lucas359
fuente
2
En realidad, el puerto de Skype es dinámico, puede cambiar el puerto si ya está ocupado. La solución más sencilla es salir de Skype y luego iniciar Apache, luego iniciar Skype nuevamente. Esta es una operación única y resuelve el problema.
Musa Haidari
Sí, resuelve el problema. Pero para aquellos que no quieren reiniciar Skype cada vez, pueden usar esto.
Luke359
1

Si no funciona por encima de la identificación del puerto, cámbielo, como 8082,8080 Reinicie xammp, inicie el servidor apache, compruébelo. Ahora está funcionando.

Shyam Bhimani
fuente