Instalación de IIS

TEORÍA

IIS (Internet Information Services) es un servidor HTTP de Microsoft Windows.

PRÁCTICA

INSTALAR IIS

Buscar la herramienta «activar y desactivar características de windows», ó ejecutar «optionalfeatures.exe».

Check en las siguientes características:

1.- Internet Information Services

2.- Servicios de World Wide Web

/ Características de desarrollo de aplicaciones

/ CGI

3.- Servicios de World Wide Web

/ Seguridad

/ Seguridad IP

NOTA: Si no sabes por qué necesitas habilitar CGI, lee ESTA entrada.

Tras ello, buscar entre los programas instalados el administrador de IIS y ejecutarlo

Una vez dentro, en el subpanel «Conexiones», se puede detener el servicio de HTTP pulsando en el menú contextual del nombre de nuestra máquina la opción «Detener» (e igualmente iniciar pulsando en «Iniciar»).

En el momento que iniciemos el servicio, los puertos 80 y 443 de nuestra máquina estarán ocupados y por ende ya no podremos iniciar otro servidor HTTP dentro del mismo.

SITIOS (VIRTUAL HOSTS)

Si expandimos la pestaña de nuestra máquina, y la carpeta «Sitios» veremos un elemento que pone «Default Web Site». Este es el sitio web (host virtual) por defecto, se accede a él desde una petición HTTP a «localhost» o bien desde el sistema de archivos del OS en la carpeta «C:/inetpub/wwwroot«, la cual se crea automáticamente al instalar el servidor y es donde almacena los documentos html para el sitio web por defecto.

Podemos detener/iniciar los virtual hosts abriendo el menú contextual del host concreto y yendo a «administrar sitio web»->iniciar/detener

Se puede añadir un sitio (virtual host) abriendo el menú contextual del elemento «Sitios» y pulsando en «Agregar sitio Web». Ahí se te preguntará cómo se llama el sitio, el nombre del host y la ruta del disco duro donde se almacena el mismo:

NOTA: Si trabajamos en local (o sobre un nombre de dominio que no se encuentre en servidores DNS), recuerda que debes añadir la entrada del nombre del host asociada a la IP 127.0.0.1 en el archivo HOSTS de windows. Más información.

NOTA 2: La dirección IP debería ser «Todas las no asignadas» cuando la conexión NO sea por LAN (esto es, por WAN o MAN), en otro caso, la IP que tenga el servidor dentro de la red local (la típica 192.168.X.Y) o la IP 127.0.0.1 serían válidas.

PHP COMO CGI

Si no sabes qué es CGI/FastCGI, puedes leer ESTA entrada para comprenderlo. Pero baste decir que hay que configurar el servidor IIS para que pueda ejecutar scripts de PHP. Para ello podemos configurarlo para todo el servidor o para un sitio concreto (es tu elección).

Dentro de cualquiera de los dos (el nodo del servidor o el nodo de un sitio web concreto) selecciona en el subpanel principal «Asignaciones de controlador»:

En el subpanel derecho (Acciones) selecciona «Agregar asignación de módulo…» y rellena el formulario con los siguientes valores:

  • *.php: para indicar que se aplica a todas peticiones acabadas en .php. (¿Cómo poner varios tipos de peticiones para el mismo CGI, por ejemplo php y phtml sin tener que añadir dos módulos diferentes?).
  • FastCgiModule: para usar la variante de CGI conocida como FastCGI que optimiza el uso de recursos del SO.
  • path/php-cgi.exe: hay que indicar el ejecutable preparado para la comunicación CGI de PHP.

Y con esto, nuestro servidor IIS ya puede interpretar los archivos PHP.

¡IMPORTANTE!: Se recomienda que la distribución de PHP usada sea la NTS para mejor rendimiento.

Más información en los siguientes enlaces:

NOTA: Deberías darle los siguientes valores a las variables de «php.ini» para mejor funcionamiento:

fastcgi.impersonate = 1
fastcgi.logging = 0
cgi.fix_pathinfo=1
cgi.force_redirect = 0

Deja un comentario