lunes, 18 de marzo de 2013

Instalación y Configuración Apache 2.4.4, PHP 5.4 & 5.5 Archivos ZIP en Windows7/8

Ya que en la web no se encuentra un(a) buen(a) manual/guía de como instalar el Servidor Web Apache y de uno de los grandes lenguajes de Programación de lado de Servidor como lo es PHP, Además de no estar disponibles sus paquetes de instalación (Lo hay pero no es de un proveedor fiable, además de no estar disponibles en sus ultimas versiones) me he tomado la tarea de traerles este tutorial de como hacerlo de la mejor manera en nuestros sistemas Windows 7/8

1- Como Primer paso Debemos descargar los paquetes .zip tanto de Apache como PHP de los siguientes enlaces


Apache Loungue (Versiones Compiladas para Sistemas Microsoft)


Apache 2.4.4 32 bits


Apache 2.4.4 64 bits



Dado que estos paquetes (Apache) están compilados con Visual C++ para que sean compatibles con Windows, Debemos Tener instalado Visual C++ Redistributable Package 2010 SP1 ya sea x86 o x64 dependiendo de la arquitectura de nuestra máquina. Los enlaces se encuentra en la misma página de Apache en la parte de arriba

Archivos PHP

PHP 5.4.16 x32


PHP 5.5 x32 (ACTUALIZADO) Es necesario Visual C++ Redistributable Package 2012

PHP 5.4.12 x64


PHP 5.5 x64 (ACTUALIZADO) Es necesario Visual C++ Redistributable Package 2012

Para ambas versiones de php 5.5 es necesario instalar la version 2012 de Visual C++. Si optamos por las versiones 5.4, será suficiente con la version 2010 de Visual C++ que instalamos junto con Apache 2.4.4


Debemos descargar los archivos para la misma arquitectura tanto Apache como PHP (Apache 32 con php 32, Apache 64 con PHP 64)


2- Una vez descargados nuestros paquetes procederemos a instalar Apache. Descomprimimos nuestro paquete zip directamente dentro de la Unidad C:\





Luego abrimos el achivo httpd.conf situado en C:\Apache24\conf\httpd.conf y agregamos las siguientes lineas al final



ServerRoot "c:/Apache24"
ServerName localhost:80
DocumentRoot "c:/Apache24/htdocs"

LoadModule php5_module "c:/php/php5apache2_4.dll"

AddHandler application/x-httpd-php .php
#configure the path to php.ini
PHPInidir "c:/php"



No está de más buscar estos parámetros en el archivo y modificarlos con los valores mencionados, si resulta que no se encuentran entonces los agregamos al final



La primera instrucción define la ruta de instalación del servidor Apache, La segunda indica la el nombre de dominio al cual responderá nuestro servidor seguido del puerto de escucha, la instrucción DocumentRoot indica la carpeta que contendrá las paginas html o Scripts de PHP para poder Servirlos en el navegador, LoadModule carga la dll especifica de php para trabajar con apache, AddHandler agrega un manejador de aplicación para asociar los archivos con extension php con el respectivo interprete y por ultimo PHPInidir indica la ruta del archivo .ini de php (el cual veremos más adelante).



3- Luego de configurar Apache de manera correcta, no queda más que probar nuestro servidor. Para eso abrimos un terminal (cmd) con privilegios de Administrador (Click Derecho > Ejecutar como Administrador) y nos ubicamos en la la siguiente ruta C:\Apache24\bin a través del comando cd C:\Apache24\bin <Enter>



Una vez ubicado en la ruta podremos instalar Apache como un Servicio de Windows, esto quiere decir que este iniciará junto con el Sistema Operativo y estará listo para utilizar al iniciar el sistema. Como alternativa podemos simplemente ejecutar el servidor para hacer nuestras pruebas y/o desarrollos y luego detenerlo para así evitar la sobrecarga y tiempo de inicio de nuestro sistema Windows


Para instalar Apache como Servicio (una vez ubicado en la dirección descrita con anterioridad) ingresamos en consola : httpd -k install lo cual instalará e iniciará el servicio


Si bien lo que queremos es iniciar el Servidor a petición nos situamos en la misma ruta (C:\Apache24\bin) e ingresamos: httpd -k start. luego después de utilizarlo y cuando querramos  detener el servicio httpd -k stop tal y como lo haremos esta vez






Luego de instalar como servicio o simplemente iniciar el servidor, podremos ingresar mediante nuestro navegador a través de la URL localhost y podremos visualizar el mensaje It works! lo cual nos indica que hemos realizado el trabajo de manera correcta





4- Ahora procederemos a descomprimir PHP en la la unidad C:\ al igual que Apache (si el paquete tiene otro nombre simplemente renombramos a php)





Dentro de la carpeta C:\php abrimos y copiamos el contenido del archivo php.ini-production ó php.ini-development (dependiendo si nuestra instalación será para un ambiente de producción o de desarrollo) y luego creamos un archivo con el nombre php.ini y pegamos nuestro contenido.



A continuación debemos configurar ciertos parámetros al igual que con Apache. Buscamos las siguientes instrucciones y las modificamos o des comentamos (eliminando el punto y coma  ";" del inicio)


extension_dir = "ext"                 >
Sirve definir la carpeta con las extensiones .dll
extension=php_pdo_mysql.dll > para trabar como objetos las consultas sobre mysql
extension=php_mysql.dll          > para cargar la antigua api de acceso a mysql
extension=php_mysqli.dll         > nueva y mejorada api de acceso a mysql
extension=php_pgsql.dll          > api para la base de datos postgreSQL


Aca podemos des comentar las extensiones que utilizaremos o si nuestro objetivo es simplemente hacer pruebas con php no es necesario ningúna más que las que vienen habilitadas por defecto


5- Por último creamos un archivo index.php en la carpeta configurada  c:\apache24\htdocs  con el codigo siguiente:


<?php
phpinfo();
?>



El cual nos mostrará las configuraciones e información del servidor. Para abrir dicho archivo ingresamos en nuestro navegador la siguiente dirección localhost/index.php  o bien localhost:80/index.php  o incluso 127.0.0.1/index.php





Y Listo, así tendremos configurado y listo nuestras herramientas para trabajar con php e incluso con el Gestor de bases de datos MySQL, PostgreSQL y Oracle (Previamente instalados)


14 comentarios:

  1. Excelente Blog. Fue muy util para mis pruebas.

    ResponderEliminar
  2. de casualidad sabes hacer que apache funcione como proxy .. ya sabes tomar el control de una pequeña red

    ResponderEliminar
    Respuestas
    1. Pues en general tendrías que cargar los modulos respectivos para agregar dicha funcionalidad en Apache.

      en el archivo httpd.conf descomenta estos modulos
      LoadModule proxy_module modules/mod_proxy.so
      LoadModule proxy_http_module modules/mod_proxy_http.so

      y revisa si tenes estos parametros o los agregas

      ProxyPass / http://192.168.1.10:8080/site/
      ProxyPassReverse / http://192.168.1.10:8080/site/

      Donde la ip es al equipo que queres redireccionar seguido del puerto y la carpeta donde esté tu index.php o index.html en el caso de que quieras redireccionar trafico http

      Eliminar
  3. Excelente explicación.
    Voy a instalar Apache / PHP / MySQL en un servidor.
    Espero me vaya bien.
    Gracias.

    ResponderEliminar
  4. Hola.
    En mi empresa tenemos un servidor con Windows Server, no estoy segura si es 2008 o 2012.
    Mi pregunta es, cuál de las versiones de Apache puedo instalar, y si necesito alguna configuración especial, ya que es un servidor interno en la empresa.
    Gracias.

    ResponderEliminar
  5. Que tal Diana, pues en las versiones 2008 de Microsoft Windows Server puedes instalar cualquiera de las versiones actuales de apache (2.2 y 2.4), en la version 2012 supongo que tambien, ya que no he tenido la oportunidad de probar esta version de Windows Server...... y respecto a que cual de las 2 versiones utilizar; esto depende de la utilidad que le des al servidor web, por ejemplo ciertos CMS (Content Management System: Wordpress, Joomla, etc.) necesitan cierta version especifica de Apache, PHP y MySQL. Ahora si lo que quieres es colgar una pagina html y/o PHP lo más recomendado es tener la version más reciente, ya que trae optimizaciones de rendimiento y parches de seguridad. Para instalarlo en un servidor es exactamente igual que en una version cliente (Windows 7/8).

    Otra cuestion es que puedes utilizar el servidor web de microsoft IIS (Internet Information Service) que puedes activarlo sin descargar nada (en el caso de Server 2008..... en 2012 no sabría decirte) pero sería mejor notificarlo al administrador del servidor

    ResponderEliminar
  6. Hola.
    Descargué el paquete. Lo configuré y al ejecutar httpd -k install me dice que el servicio de apache fue instalado y cuando testea httpd.conf dice:
    Error de syntax, no puede cargar c:/php/php5apache2_4.dll.
    Y cuando el doy -k start me muestra el mismo error.
    Y no levanta el Apache.
    Y otra pregunta más. Cómo puedo verificar la integridad del archivo descargado?
    Gracias.

    ResponderEliminar
  7. Debes estar seguro de que el archivo php5apache2_4.dll se encuente en la ubicación c:/php/

    Tambien recuerda ejecutar la consola de windows como administrador tanto para instalar el servicio de apache como para iniciarlo

    ResponderEliminar
  8. Gracias amigo !!! Me sirvo demasiado :)
    Gran tutorial :)
    Saludos

    ResponderEliminar
  9. modulo php5apache2_4.dll no esta en la fuente rar de 64 bits

    trate de cargar el que esta en la fuente php x86 rar, y me dice que no es una app valida win32

    ResponderEliminar
  10. Buenos días.
    Espero que me puedan ayudar con el siguiente problema.
    Intento cargar el modulo de mysql, pero no funciona.
    Al momento de ejecutar codigo de mysql no ejecuta nada,

    Segui las instrucciones al pie de la letra.

    Saludos

    ResponderEliminar

Tienes Dudas, comentarios o alguna inquietud?
No Dudes en comentar