Más con Symfony

11.1. Introducción

Este capítulo presenta un nuevo tutorial paso a paso sobre la instalación, configuración y las pruebas funcionales del framework Symfony sobre Windows Server 2008.

Para poder seguir este tutorial, te recomendamos que utilices un servidor dedicado conectado a Internet. Por supuesto también puedes seguirlo en un servidor local o en una máquina virtual en tu ordenador.

11.1.1. Los motivos de un nuevo tutorial

Actualmente el sitio web de Symfony incluye dos artículos sobre el uso de Symfony sobre Microsoft Internet Information Server (IIS): symfony on IIS y Installing symfony on IIS. El problema de estos artículos es que utilizan versiones antiguas de Microsoft Windows, por lo que no hacen uso de Windows Server 2008 (lanzado en febrero de 2008) y que incluye muchos cambios interesantes para los programadores de PHP:

  • IIS 7, la versión que incluye Windows Server 2008, ha sido reescrita por completo para que su diseño sea modular.
  • IIS 7 ha demostrado ser muy fiable, necesitando muy pocos parches de Windows Update desde su lanzamiento.
  • IIS 7 también incluye el acelerador FastCGI, que aprovecha el modelo de hilos nativo de Windows gracias a su diseño multi-hilo.
  • La implementación FastCGI de PHP supone un rendimiento de ejecución entre 5 y 10 veces mejor, sin cache, comparado con los habituales ISAPI o CGI de PHP sobre Windows y IIS.
  • Recientemente, Microsoft ha presentado un nuevo acelerador para PHP que en el momento de escribir estas líneas se encontraba en estado release candidate.

11.1.2. Cómo seguir este tutorial en diferentes sistemas Windows, incluyendo los de 32 bits

Este capítulo se ha escrito específicamente para la versión de 64 bits de Windows Server 2008. No obstante, debería ser posible utilizar otras versiones diferentes sin ningún tipo de problema.

Nota La versión exacta del sistema operativo utilizado en los pantallazos se llama Windows Server 2008 Enterprise Edition con Service Pack 2, edición 64-bit.

11.1.2.1. Versiones de 32 bits de Windows

Este tutorial se puede seguir fácilmente en las versiones de 32 bits de Windows reemplazando las siguientes referencias en el texto:

  • En las ediciones de 64 bits: C:\Program Files (x86)\ y C:\Windows\SysWOW64\
  • En las ediciones de 32 bits: C:\Program Files\ y C:\Windows\System32\

11.1.2.2. Ediciones diferentes a la Enterprise

Si no dispones de la versión Enterprise, tampoco es un problema. El contenido de este capítulo se puede portar fácilmente a otras ediciones de Windows Server: Windows Server 2008 Web, Standard o Datacenter Windows Server 2008 Web, Standard o Datacenter con Service Pack 2 Windows Server 2008 R2 Web, Standard, Enterprise o Datacenter.

Todas las ediciones de Windows Server 2008 R2 están disponibles exclusivamente como sistema operativo de 64 bits.

11.1.2.3. Sobre las ediciones internacionales

La configuración regional utilizada en los pantallazos es en-US. Para el tutorial también se instaló el paquete de idioma para Francia.

También se puede ejecutar el tutorial en los sistemas operativos Windows de tipo cliente: Windows XP, Windows Vista y Windows 7 tanto en versión x64 como x86.

11.1.3. Servidor web utilizado

El servidor web utilizado en el tutorial es Microsoft Internet Information Server versión 7.0, que se incluye en todas las ediciones de Windows Server 2008. El tutorial comienza con un servidor Windows Server 2008 completamente funcional e instala el servidor IIS desde cero. La instalación se realiza escogiendo las opciones sugeridas por defecto, pero se añaden dos módulos específicos de los varios que incluye IIS 7.0: FastCGI y URL Rewrite.

11.1.4. Bases de datos

SQLite es la base de datos preconfigurada en el sandbox de Symfony. SQLite funciona en Windows sin tener que instalar ni configurar nada, ya que existe una extensión PDO que se instala durante la instalación de PHP.

Por tanto, no es necesario ni descargar ni ejecutar una instancia independiente de SQLITE.EXE:

[PHP_PDO_SQLITE]
extension=php_pdo_sqlite.dll

11.1.5. Configuración del Windows Server

Para seguir paso a paso las explicaciones de este tutorial, es mejor empezar con un Windows Server recién instalado.

Obviamente también puedes trabajar con un servidor existente, pero puedes encontrarte diferencias debido al software instalado y por la configuración regional seleccionada.

Para obtener exactamente los mismos resultados que los que se muestran en los siguientes pantallazos, te recomendamos que instales Windows Server como máquina virtual aprovechando la versión que se puede descargar gratuitamente en Internet y que es válida durante un período de 30 días.

Para seguir el tutorial es obligatorio tener acceso como Administrador al servidor. Si trabajas de forma remota, debes utilizar Remote Desktop Services (conocido anteriormente como Terminal Server Client) y asegúrate de que tenga acceso como Administrador.

La distribución utilizada en este capítulo es Windows Server 2008 con Service Pack 2, tal y como puedes comprobar con el comando Winver:

Comprueba la versión de tu sistema con el comando Winver

Figura 11.1 Comprueba la versión de tu sistema con el comando Winver

En este caso se ha instalado Windows Server 2008 incluyendo su entorno gráfico, similar al de Windows Vista. También es posible utilizar una versión que sólo dispone de la línea de comandos pero que tiene las mismas características con un tamaño mucho más reducido (1.5 GB frente a 6.5 GB). Esta última versión también reduce significativamente el número de parches de Windows Update que se deben instalar.