Configurar Apache e ISS en el puerto 80

IIS_y_ApacheEn ocasiones nos encontramos con que debemos de tener más de un servidor web en la misma máquina y todos ellos atendiendo peticiones por el puerto 80, que es el puerto por defecto de HTTP. Recientemente he tenido que instalar un servidor web Apache en una máquina que ya estaba ejecutando un servidor IIS 7.5 y he tenido que hacerlos coexistir, ya que por defecto la mayoría de servidores web están configurados para mantenerse a la escucha de todo el rango de IPs en el puerto 80 para simplificar su configuración y Apache e ISS no iban a ser una excepción.

El truco aquí para hacer que varios servidores web puedan coexistir entre ellos es limitar el rango de IPs que atienden en un mismo puerto. Por ejemplo, podemos configurar IIS para que atienda peticiones para la IP x.x.x.x:80 y Apache para que atienda peticiones para la IP y.y.y.y:80. En el caso de Apache es muy sencillo configurarlo para que solo atienda una IP (o rango de IPs) en el puerto 80, pero para IIS tendremos que tirar de línea de comandos ya que desde el propio panel de administración de IIS no se nos da la opción para hacer esta modificación.

Limitar el rango de IPs de IIS

Por defecto IIS se mantiene a la escucha de todas las IPs en el puerto indicado en alguno de sus sitios web. Es decir, si le indicamos a IIS que para un determinado sitio web vamos a utilizar la IP x.x.x.x:80, él se mantendrá a la escucha del puerto 80 para cualquier IP, aunque no la estemos utilizando. Para limitar el rango de IPs que atenderá IIS tenemos que abrir el Símbolo de Sistema (cmd) y ejecutar el comando netsh http add iplisten ipaddress=x.x.x.x, donde x.x.x.x será la IP que vamos a utilizar en nuestro sitio web de IIS. Podemos añadir tantas IPs como queramos a la lista. Por último reiniciamos IIS y le asignamos a nuestro sitio web de la IP que acabamos de añadir a la lista.

Para eliminar IPs podemos utilizar el comando delete iplisten ipaddress=x.x.x.x

Limitar el rango de IPs de Apache

Apache viene configurado por defecto para escuchar cualquier IP en el puerto 80, por lo que al igual que hemos hecho con IIS debemos de limitar su rango de IPs para que no se pisen el uno al otro. Para ello abrimos el fichero $APACHE_HOME/conf/httpd.conf y le indicamos a Apache que en vez de escuchar el puerto 80 escuche una determinada IP en el puerto 80. Para ello buscamos la línea Listen 80 y la sustituimos por  Listen y.y.y.y:80, donde y.y.y.y será la IP que utilice nuestro sitio web de Apache.

Con estos sencillos pasos tendremos configurados IIS y Apache para que trabajen conjuntamente sin molestarse el uno al otro.

Un comentario en “Configurar Apache e ISS en el puerto 80”

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *