Apache, PHP y SQL Server: VC9 y x86

Este manual tiene el objetivo de instalar las últimas versiones de Apache, PHP y el driver de SQL Server de Microsoft para PHP. El software se instalará en una máquina con sistema operativo de 64 bits y se instalarán las versiones compiladas en VC9 y la distribución de PHP Thread Safe (TS).

Una traducción un poco literal para las versiones de PHP sería Thread Safe (segura) y otra Non Thread Safe (no segura).

Diferencias entre las versiones de PHP Thread Safe y Non-Thread Safe

Diferencias entre VC9 y VC6

La diferencia entre las versiones VC6 y VC9 es el compilador usado para generarlas. VC6 (Visual Studio 6 Compiler) y VC9 (Visual Studio 2008 Compiler)

Si usas PHP con Apache 1 o Apache2 de apache.org tienes que utilizar la versión VC6 de PHP. Si usas PHP con IIS, debe utilizar las versiones de PHP VC9.

Las versiones VC6 se compilan con el antiguo Visual Studio 6 compilador y las versiones VC9 se compilan con el compilador de Visual Studio 2008 y tiene mejoras en el rendimiento y la estabilidad. Para las versiones VC9 es necesario descargar Microsoft 2008 C + + Runtime.

No uses la versión VC9 con binarios provenientes de la web oficial de apache apache.org.

Versiones para 32 y 64 bits

En este manual instalaremos solo las versiones de apache y PHP VC9 para 32 bits, las versiones para 64 bits están en fases muy betas, sobre todo las de PHP que se encuentran por la versión 5.2.4 aunque bien es cierto que al descargarla te viene un manual con instrucciones para compilar la versión que quieres a partir del código original.

Para versiones de 64 bits de apache puedes ir aquí o aquí. Para descargar las versiones y manuales de PHP para 64 bits puedes hacerlo desde aquí, en esta otra web indican que tienen la versión de 64 bits de PHP pero aún no está disponible.

Versiones a instalar

  • Apache 2.2.16 SSL VC9 x86
  • PHP 5.3.3 VC9 x86
  • SQL Server driver para PHP 2.0

El equipo que voy a utilizar será un Windows Server 2008 SP2 Inglés 64 bits con procesador Inter Xeon E5530 a 2.40 GHz, 4 GB de RAM y 80 GB de disco duro.

Software necesario

  • Visual C++ 2008 Redistributable Package x64
  • Apache 2.2.16 x86 VC9
  • PHP 5.3.3 x86 VC9 paquete ejecutable
  • Microsoft SQL Server 2008 R2 Native Client

Instalación Apache 2.2.16 VC9 x86

En primer lugar, instalar (no es necesario para Windows 7) Visual C + + 2008 Redistributable Package (x86 y x64)

Descargar la última versión de apache VC9 desde apache lounge (sólo disponible para Windows de 32 bits aún no disponible para versiones de 64 bits)

Descomprimir el contenido de la carpeta apache2 en C:\Program Files (x86)\Apache2

Abrir con el bloc de notas el archivo de configuración de apache http.conf ubicado en C:\Program Files (x86)\Apache2\conf y realizar los siguientes cambios:

o Reemplazar:

clip_image001

o Descomentar la línea LoadModule rewrite_module modules/mod_rewrite.so

o Editar la configuración de ServerAdmin y poner tu correo electrónico.

o Descomentar la directiva ServerName y poner tu ip o dominio seguido de :80 Ejemplo: 127.0.0.1:80

o Para permitir las directivas de .htaccess sustituir AllowOverride None por AllowOverride All en los tags de <Directory />

o Agregar a los archivos por defecto el index.php en la directiva DirectoryIndex

o Puedes cambiar el nivel del log de error con la directiva LogLevel, para desarrollo es recomendado warn para producción error.

Correr la consola de comandos en start -> run (inicio -> ejecutar en español)

clip_image002

Ejecutar el archivo httpd.exe (primero debes navegar hasta la carpeta donde está en la pantalla del ms-dos.

clip_image004

Una vez ejecutado el archivo probamos en el explorador poniendo en la barra de direcciones localhost, si todo está correcto debería salirnos lo siguiente:

clip_image006

Cerramos todo y volvemos a abrir la consola de comandos y volvemos a navegar hasta el directorio bin de apache para instalar apache como un servicio: ejecutamos httpd.exe -k install y debería salirnos lo siguiente:

clip_image008

Para comprobar que el servicio sea correcto vamos a start -> run y escribimos services.msc, en la pantalla que nos sale debería estar el servicio de apache2 con tipo de inicio automático y damos click derecho y la opción botón start, así:

clip_image010

Ahora instalaremos el monitor de apache, lo ejecutamos haciendo doble click en apachemonitor.exe y para que reinicie siempre con nosotros movemos un acceso directo a la carpeta C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

clip_image011

Instalación de PHP 5.3.3 x86 VC9 en Apache 2.2.16 x86 VC9

Ejecutamos el instalador descargado desde la página oficial de PHP.

Aceptamos la política del programa e instalamos en C:\Program Files (x86)\PHP\

clip_image012

Lo instalamos como módulo de apache 2.2.x

clip_image013

Escogemos el directorio de configuración del apache

clip_image014

Activamos las extensiones de Multi-byte string y XSL.

Cuando termine la instalación reiniciamos apache y el monitor de apache también y si todo está correcto debería mostrarnos en el monitor de apache la versión de PHP.

clip_image016

Importante: Si el apache no interpreta correctamente los archivos PHP debemos ir al archivo de configuración de apache y buscar al final donde está el módulo de PHP y agregar estas 2 líneas si no existen:

AddType application/x-httpd-php .php

AddType application/x-httpd-php .php-source .phps

Instalación del driver de SQL Server para PHP 5.3.3 VC9 x86

Descargar e instalar Microsoft SQL Server 2008 R2 Native Client (x86 y x64) Los enlaces de descarga se encuentran en el apartado system requeriments del archivo de ayuda del driver.

Al instalarlo debemos elegir todos los componentes.

clip_image017

Descargar la última versión del driver.

Ejecutar el archivo y seleccionar cualquier carpeta para descomprimirlo.

Copiar el archivo php_sqlsrv_53_ts_vc9.dll a la carpeta de extensiones de PHP en C:\Program Files (x86)\PHP\ext y renombrarlo a php_sqlsrv.dll.

Editar el archivo de configuración de PHP php.ini ubicado en C:\Program Files (x86)\PHP y agregar al final la siguientes 2 líneas:

o [PHP_SQL_SERVER]

o extension=php_sqlsrv.dll

Reiniciamos apache y si todo está correcto debería reiniciar sin problemas.

Importante: El driver de Microsoft para SQL Server 2.0 solo es compatible con versiones de PHP superiores a la 5.2.4.

Espero que os sea útil si queréis experimentar con versiones de apache y php compiladas con VC9.

Comentarios