♦Bueno, voy a describir mi primera experiencia,
Llevo ya unos dias intentando lo siguiente:
Tengo un servidor, al que accedo en remoto y tiene dos ips, pero solo una tarjeta de red, el servidor tiene instalado Windows 2003 Server y necesito alojar páginas php y asp, con lo que debe tener instalado dos servidores web (Internet Information Server y apache).
Inicialmente en esta tarjeta tengo una ip, y configurar apache bajo esa ip no tiene nada, solo en el archivo de configuración hay que poner:
Listen
Quiero que el puerto de salida de mi apache sea el 80.
Si tengo configurado VirtualHost debo escribir lo mismo en las directivas
NameVirtualHost
y en cada nombre de virtualHost, deberé poner VirtualHost direccionIP:puerto
Esto si rearrancamos apache funciona sin problemas, las páginas php son accesibles sin problemas, con virtualhost.
Hasta aqui ningún problema aparente, seguimos:
Necesito que la tarjeta de red del servidor esté configurada otra ip más, ya que físicamente solo tengo una tarjeta pero dos ips públicas.
En propiedades de TCP/IP de la tarjeta de red, en opciones avanzadas añado la otra ip junto con su máscara.
Ahora ya tengo las dos ips configuradas en el servidor y el apache saliendo por una.
Bueno, el problema viene con el IIS, al arrancar el IIS y pasar a intentar configurarlo me aparece el siguiente problema: The process cannot access the file because it is being used by another process,
Esto viene porque el apache está ocupando el puerto 80 de la ip y el IIS tiende a buscar tambien por la ip del apache en lugar de por la suya.
Despues de muchos intentos he conseguido averiguar lo siguiente, hay que indicarle al IIS que solo debe escuchar por su ip, y no entrar por la otra.
He conseguido hacerlo funcionar con una utilidad que se llama httpcfg.exe, que está en los archivos de soporte del Windows 2003, yo en mi equipo no lo tenía y no iba a instalar todas las herramientas para solo utilizar esa, me lo he bajado desde la siguiente página
Me lo he bajado y desde msdos he ejecutado lo siguiente:
1 – Paro todos los servicios del IIS de la siguiente forma: net stop http /y
2 – Hay que hacer que el IIS escuche solo por la IP que queremos, no por otra, esto se haría: httpcfg set iplisten -i 192.168.1.253
3- Hacer que solo escuche por esa ip: httpcfg query iplisten
4- Reiniciar los servicios del IIS: net start w3svc
Una vez realizado esto irán apareciendo mensajes indicando las ips configuradas.
Tras esto ya podemos ir al IIS y configurarlo para que muestre las páginas asp y bingo! ya funciona y tenemos Apache+IIS con 2 IPS y una tarjeta de red.
Espero que os sirva de ayuda.
Saludos