Imprimir

Instalación de PHP como módulo de Apache en Ubuntu

Comprobación del funcionamiento de PHP

Instalación de PHP como módulo de Apache en Windows

Versiones de PHP para Windows

Instalación de Apache Lounge en Windows

Instalación de PHP 5 como módulo de Apache 2.4 en Windows

Instalación de PHP usando FastCGI en IIS 7 de Windows Server 2008

Configurar PHP para IIS

Habilitar la compatibilidad con FastCGI

Agregar asignación de controlador PHP

Documento predeterminado index.php en IIS

Archivo de configuración de PHP

 

La instalación estándar del servidor web Apache sólo permite servir páginas web estáticas (HTML, JavaScript, CSS, etc), por lo que si se quiere servir páginas web con contenido dinámico escrito en PHP, se deben realizar algunas modificaciones en la configuración del servidor.

Instalación de PHP como módulo de Apache en Ubuntu

En Ubuntu tan sólo se debe instalar el paquete php5 utilizando el gestos de paquetes:

sudo apt-get install php5

En versiones de Ubuntu modernas que no traigan php5 en el repositorio, se instalará la versión que ofrezca (p.e. PHP7) con la siguiente instrucción:

sudo apt install php

También requiere la instalación del módulo de PHP para Apache2 para que se ejecuten las páginas web que contengan código PHP:

sudo apt install libapache2-mod-php

El archivo que contiene la configuración de PHP la puedes encontrar en la siguiente ruta:

/etc/php5/apache2/php.ini

En PHP7 la ruta al archivo de configuración es:

/etc/php/7.0/apache2/php.ini

Puedes comprobar que se ha habilitado el módulo de PHP en la configuración del servidor web Apache:

php02

Comprobación del funcionamiento de PHP

Una manera rápida y sencilla de comprobar el correcto funcionamiento de PHP en el servidor web es crear, en el directorio principal del servidor o en otro cualquiera, una página web con extensión .php con el siguiente contenido:

<?php phpinfo(); ?>

Al cargar la página desde el navegador web del cliente, se debe mostrar un contenido similar al siguiente:

php01

Como puedes apreciar, se muestra una información detallada sobre el servidor y la configuración de PHP.

Instalación de PHP como módulo de Apache en Windows

En la página windows.php.net/download/ puedes encontrar los enlaces de descarga de las distintas versiones de PHP para Windows.

php17 php18

Versiones de PHP para Windows

Puedes observar que aparecen versiones de PHP cuyo nombre está precedido por VC6 ó VC9. La diferencia radica en la versión del compilador utilizado para crear el binario de PHP (Visual Studio 6 o Visual Studio 9). En la parte izquierda de la página de descargas se informa que no deben usarse las versiones VC9 con el servidor web de apache.org (Do NOT use VC9 version with apache.org binaries). La última versión que aparece compilada con VC6 en el momento de crear este artículo es PHP 5.2 (5.2.17), y en la página principal de windows.php.net se informa que las versiones 5.2 de PHP dejan de tener soporte, y se recomienda la actualización a la versión 5.3.6 (All PHP users should note that the PHP 5.2 series is NOT supported anymore. All users are strongly encouraged to upgrade to PHP 5.3.6.). Recuerda que debes tener instalado también el Paquete redistribuible de Microsoft Visual C++ 2008 SP1 (x86) para poder ejecutar las versiones de PHP indicadas como VC9.

Si se desea utilizar una versión de PHP a partir de 5.3 se deben utilizar los binarios del servidor web Apache creados por ApacheLounge en lugar de los proporcionados por apache.org.

Por otro lado, dentro de las versiones de PHP para Windows se pueden encontrar los tipos Non Thread SafeThread Safe

Instalación de Apache Lounge en Windows 

En este apartado del artículo se va a realizar la instalación de PHP como módulo del servidor web Apache, con la última versión de PHP en el momento de escribirlo, que es la 5.4.10 VC9 x86 Thread Safe con el servidor web Apache 2.4.3 para Windows 32 bits compilada por Apache Lounge. En este caso no se dispone de un instalador, lo cual no ocurre con otras versiones, por lo que se hará la instalación de forma manual.

Para poder ejecutar esta versión de Apache, es requerido tener instalado el paquete Visual C++ 2010 SP1 Redistributable Package x86 (para 32 bits) o Visual C++ 2010 SP1 Redistributable Package x64 (para 64 bits). En caso contrario obtendremos el siguiente mensaje de error al intentar ejecutar el monitor de Apache:

php04

Descomprimir todo el contenido del archivo zip que contiene Apache en la carpeta raíz de la unidad C:, para que finalmente, todos sus archivos se encuentren en la ruta C:\Apache24, que es la configuración que trae predeterminada.

php07

La manera más cómoda de ejecutar el servidor web Apache, es teniéndolo como servicio, de manera que se ejecute automáticamente al iniciar el sistema. Para ello, debes ejecutar como administrador el Símbolo del sistema, y escribir:

cd c:\Apache24\bin

httpd -k install

php05

Tras reiniciar el sistema, se debe poder acceder con la dirección IP correspondiente, a la página web por defecto del servidor, si el cortafuegos está configurado correctamente.

php06

Instalación de PHP 5 como módulo de Apache 2.4 en Windows

Tras la instalación del servidor web Apache y la comprobación de su funcionamiento, vamos a instalar PHP en el sistema para poder cargar correctamente las aplicaciones web creadas en PHP.

Desde la web de PHP para Windows, windows.php.net, podemos descargar la versión más reciente. En este caso se ha descargado la versión 5.4.10, que no trae instalador, por lo que se debe hacer la instalación manualmente, lo cual ofrece la posibilidad de conocer más en profundidad la configuración de PHP.

El contenido del archivo comprimido que se descarga es recomendable descomprimirlo en la carpeta C:\php para facilitar la configuración, ya que así viene predefinido.

php08

El archivo php5ts.dll debe ser accesible al servidor web, por lo que lo más cómodo y recomendable puede ser añadir la ruta C:\php a la variable de entorno PATH.

php09

El siguiente paso es crear el archivo de configuración php.ini. Para facilitar su creación, puedes encontrar en la carpeta los archivos php.ini-developmentphp.ini-production. El primero de ellos está preparado para establecer una configuración de PHP para desarrollo, y el segundo para un entorno final de producción, que ofrece más seguridad y rendimiento pero menos información de depuración. Tan sólo debes copiar el archivo deseado según el caso, y renombrarlo como php.ini.

php10

Tan sólo queda configurar el servidor web Apache para informarle que se va a utilizar el módulo de PHP para ese tipo de páginas. Para ello, debes editar el archivo de configuración de Apache (httpd.conf) e incluir las siguientes líneas, preferiblemente en el bloque en el que se encuentran las otras líneas de carga de módulos (LoadModule):

LoadModule php5_module "c:/php/php5apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "C:/php"

Si la instalación de PHP se ha realizado en una carpeta diferente a C:\php, se debe cambiar la ruta en las líneas anteriores a la que corresponda. El archivo DLL que se indica en la primera líneas anterior, debe corresponder con la versión de Apache que se vaya a utilizar, por lo que podría indicarse el archivo php5apache2_2.dll si correspondiera a la versión 2.2 de Apache.

También es recomendable indicar al servidor web Apache que cargue de forma automática los archivos cuyo nombre sea index.php, al igual que sucede con los archivos index.html. Para ello recuerda que debes indicar ese nombre de archivos en la directiva DirectoryIndex de la configuración de Apache.

DirectoryIndex index.html index.php

Instalación de PHP usando FastCGI en IIS 7 de Windows Server 2008

Partimos de Windows Server 2008 con el servidor web IIS instalado con la configuración básica y PHP instalado en el sistema como se ha explicado anteriormente para Windows, aunque en este caso se debe instalar la versión Non Thread Safe que es la recomendada para ejecutar PHP con FastCGI. Recuerda que debes tener instalado también el Paquete redistribuible de Microsoft Visual C++ 2008 SP1 (x86) para poder ejecutar las versiones de PHP indicadas como VC9.

Configurar PHP para IIS

Edita el archivo de configuración php.ini realizando las siguientes modificaciones:

En el mismo archivo de configuración puedes encontrar comentarios que explican la utilidad de cada directiva anterior.

Habilitar la compatibilidad con FastCGI

  1. Desde el administrador del servidor web IIS, baja hasta la sección de Servicios de función (o roles) y utiliza la opción Agregar servicios de función (o Agregar roles).
    php14b
  2. Activa la opción CGI, que permite habilitar tanto el servicio CGI como FastCGI.
    php15

Agregar asignación de controlador PHP

Para que IIS 7 hospede las aplicaciones PHP, debes agregar una asignación de controlador que le indique a IIS que pase todas las solicitudes de archivos PHP al marco de trabajo de aplicación PHP usando el protocolo FastCGI. Para ello realiza los siguientes pasos:

  1. Desde el Administrador del servidor web IIS, abrir la utilidad de Asignación de controlador.
    php11
  2. En el panel de Acciones, accede a la opción Agregar asignación de módulo.
    php12
  3. Rellena los siguientes datos:
    • Ruta de acceso de la solicitud: *.php
    • Módulo: FastCgiModule
    • Ejecutable: C:\php\php-cgi.exe (Observa que debes cambiar la lista desplegable para que muestre los archivos .exe)
    • Nombre: PHPviaFastCGI
      php13

Documento predeterminado index.php en IIS

Es conveniente indicar al servidor web IIS que cargue de manera automática los archivos con nombre index.php al igual que sucede con los archivos index.html.

Para ello, desde el Administrador de IIS, abre la característica Documento predeterminado.

php16

En la parte derecha, selecciona la acción Agregar, e indica el nombre de archivo index.php.

php19

Archivo de configuración de PHP

El archivo php.ini que se ha comentado anteriormente contiene la configuración de PHP. Se trata de un archivo de texto en el que se incluyen comentarios sobre las distintas posibilidades que ofrece dicha configuración.

En la página Descripción de las directivas del núcleo de php.ini puedes encontrar las diferentes opciones de configuración que puedes utilizar, incluyendo los valores iniciales de cada directiva así como el lugar en el que se puede indicar cada una de ellas. Las directivas se pueden especificar en el archivo de configuración general (php.ini), pero también en otros sitios como se indica en la lista de directivas anterior. En la página Dónde se puede realizar un ajuste de configuración puedes consultar el significado de cada lugar, y en Cómo cambiar los ajustes de configuración puedes ver cómo se pueden aplicar los cambios.