2011-05-11 28 views
11

Estoy trabajando en Windows 7. IIS 7 y XAMPP están instalados en la misma computadora. He estado jugando con Win Host File y los archivos de configuración de Apache para comprender Server Root y el directorio.Apache e IIS 7 funcionando juntos

No sé dónde me equivoqué, que sé cuando escribo localhost me muestra la pantalla de IIS 7 y cuando localhost/xampp aparece la pantalla apache.

¿Cómo se pueden ejecutar IIS y apache juntos en el puerto 80? confuso.

enter image description here

enter image description here

enter image description here

Respuesta

17

Es factible. Lo que hay que tener en cuenta es que ningún servicio 2 puede compartir el mismo puerto y la misma dirección IP. Desafortunadamente, IIS toma el puerto 80 completamente en la dirección mágica 0.0.0.0. Lo que debe hacer es volver a vincular Apache e IIS a diferentes direcciones IP, así como eliminar el enlace 0.0.0.0. No estoy seguro de cómo llegar a IIS7 (suponiendo que lo ejecute dado IE9 en las pantallas), la última vez que saqué este truco fue IIS6.

Una opción más sensata sería configurar un proxy inverso en 80 y distribuirlo en diferentes servidores web según los criterios racionales que desee utilizar.

EDIT: conocer el juju magia, IIS7 post #44 - IIS7 and Apache on the same machine.

+0

Lo hice de la misma manera que el enlace que señalaste. Se ejecuta satisfactoriamente en IIS 7, Windows 2008 desde hace aproximadamente un año. –

+0

Extraño, si escribe localhost de firefox, muestra localhost para apache. Pero intento lo mismo desde IE 9 muestra la página de inicio de iis 7. – Gainster

+0

Echo la IP remota, quizás uno está usando v6 sobre v4. –

9

Cómo ejecutar IIS y XAMPP Juntos en la misma máquina

Es posible ejecutar los servidores IIS y XAMPP juntos en la misma máquina con sólo cambiando el número de puerto de cualquiera de los servidores. XAMPP-Apache e IIS ambos servidores usan el mismo puerto 80 para conectarse. En esta publicación, voy a mostrarte cómo cambiar el número de puerto para el servidor XAMPP-Apache. Cambiar el número de puerto para el servidor Apache le permite ejecutar los servidores IIS y XAMPP en la misma máquina usando diferentes puertos.

En primer lugar, debe conocer la carpeta donde está instalado XAMPP (carpeta raíz). La carpeta predeterminada es c: \ xampp. Desde la carpeta raíz, vaya a la carpeta "apache \ conf" y encuentre el archivo "httpd.conf".

Antes de editar el archivo, haga una copia de seguridad del mismo con un nombre "httpd.conf.bak" para que, si algo sale mal, pueda reemplazar este archivo. Ahora abra el archivo "httpd.conf" con un editor como el bloc de notas. Necesita hacer dos ediciones en el archivo.

La primera de ellas:

Estudia las siguientes líneas en el archivo.

#Listen 0.0.0.0:80 
#Listen [::]:80 
Listen 80 

cambiarlo como se muestra a continuación:

#Listen 0.0.0.0:80 
#Listen [::]:80 
Listen 8080 

La segunda edición:

encontrar la línea de abajo:

ServerName localhost:80 

cambio a:

ServerName localhost:8080 

Ha terminado de cambiar el número de puerto. Ahora reinicie su servidor Apache desde el panel de control xampp y está listo para funcionar.

Abra su navegador y escriba la dirección y localhost:8080. Puede ver la carpeta raíz de Apache abierta. No es necesario realizar ningún cambio en el servidor IIS y acceder solo ingresando la dirección localhost en su navegador.

En la imagen anterior se puede ver el servidor IIS que se accede a través localhost y el servidor XAMPP través localhost:8080 en la misma máquina, e incluso el mismo navegador a la vez.

+1

No funciona para mí – Med7at

+0

Lo mismo aquí. No funciona para mí también. – gdmanandamohon

5

En caso de tratar de obtener XAMPP (Apache) e IIS (5.1) que trabajan en WinXP esto es lo que hice:

C: \ xampp \ apache \ conf \ httpd.conf: Búsqueda de “Escuchar 80 ", el cambio a“escuchar 8080 " Búsqueda de“ServerName localhost: 80 ", cambie a“ServerName localhost: 8080 "

C: \ xampp \ apache \ conf \ adicional \ httpd-ssl.conf Buscar "Escuchar 443", cambiar a "Escuchar 4499" Buscar "", cambiar a "" Buscar "ServerName localhost: 443", cambiar a "ServerName localhost: 4499 "

[A continuación, accede a tu lado Apache corriendo localhost: 8080 y el lado ISS por loccalhost sencilla]

+0

fácil y efectivo ... gracias mucho ... en el archivo C: \ xampp \ apache \ conf \ extra \ httpd-ssl.conf que tuve en su lugar en el servidor local, tuve el sitio web de ejemplo ServerName. Después de que ambos archivos (no solo httpd.conf) cambian, pude iniciar xamp v3.2.2 junto con IIS. – Shantu

0

me he enfrentado al mismo problema. Sin embargo, he resuelto de esta manera. Lo obtuve de here, fue realmente efectivo para mí cuando todas las soluciones no pudieron proporcionarme una solución absoluta.

  1. Ir a Panel de control> Herramientas administrativas> haga clic en Servicios
  2. Find “World Wide Web servicio de publicación”
  3. clic derecho y seleccionar “Stop”
  4. clic derecho y seleccionar “Propiedades”, entonces el cambio “tipo de inicio” en “Manual”

Si esto no lo arregla, se puede averiguar lo que está utilizando el puerto 80 de la siguiente manera:

En un símbolo del sistema, ejecute 'netstat -ao> netstat.txt' para escribir las conexiones activas y los identificadores de proceso (PID) asociados a un archivo (para mí, había demasiados para simplemente verlas en el símbolo del sistema) Encuentra el PID que está escuchando en el puerto 80 (0.0.0.0:80) - para mí, el PID fue 4, lo cual parece bastante común Abra el Administrador de tareas (Ctrl + Shift + Esc), haga clic derecho en los encabezados de las columnas, y luego haga clic PID para mostrar la columna PID. Ordene por PID para encontrar el proceso para el PID que identificó anteriormente. Una vez que conozca el proceso que está causando el problema, un poco de Google (otros proveedores de búsqueda están disponibles) deberían ayudarlo a solucionarlo.

Cuestiones relacionadas