Instalar Apache + PHP + MySQL en Windows (guía rápida)

Febrero 29th, 2008

apm
Apache es el servidor web más usado en el mundo, PHP uno de los lenguajes de programación web más flexibles y poderosos y MySQL está entre las bases de datos más populares. Como si todo esto fuera poco, los tres son opensource y gratuitos. Forman, al día de hoy, una combinación clásica para desarrolladores web y servidores.

Les propongo un tutorial rápido para instalarlos y configurarlos en un entorno Windows. Aclaro que es una de las varias formas posibles y que existen programas como XAMPP que hacen todo con dos clicks. En el caso de Linux, lo más fácil es usar los repositorios y algún administrador de paquetes.

  1. Descargar Apache HTTP Server (Win32 Binary con OpenSSL; versión 2.2.8), PHP (Windows Binaries, zip package; versión 5.2.5) y MySQL Community Server (Windows Zip/Setup.exe; versión 5.0.51a).
  2. Instalar Apache desde el ejecutable (recomiendo instalarlo en la carpeta por defecto, o sea C:/Archivos de programa/Apache Software Foundation/Apache2.2).
  3. Extraer los archivos del zip de php a la carpeta C:/php.
  4. En esa carpeta buscar el archivo php.ini-recommended y renombrarlo como php.ini (la dirección al archivo debería ser c:/php/php.ini).
  5. Abrir el archivo httpd.conf (se encuentra en C:/Archivos de programa/Apache Software Foundation/Apache2.2/conf). Buscar la línea LoadModule actions_module modules/mod_actions.so y agregar antes (en líneas separadas):
  6. LoadModule php5_module “C:/php/php5apache2_2.dll”
    AddType application/x-httpd-php .php
    PHPIniDir “C:/php”
  7. Instalar MySQL desde el ejecutable (es recomendable seguir las opciones por defecto).
  8. Abrir el archivo php.ini (C:/php/php.ini). Buscar la línea extension_dir = “./” y reescribirla como extension_dir = “C:/php/ext/”. Buscar la línea ;extension=php_mysql.dll y reescribirla como extension=php_mysql.dll (sin el ;).
  9. Copiar el archivo libmysql.dll de la carpeta C:/php a la carpeta C:/Archivos de programa/Apache Software Foundation/Apache2.2/bin.
  10. Deberíamos tener, en este punto, todo instalado y configurado. Es necesario, antes de comprobarlo, reiniciar el servidor Apache. Para eso abrimos el Apache Monitor que se encuentra en el System Tray (si no está ahí, lo encuentran en C:/Archivos de programa/Apache Software Foundation/Apache2.2/bin) y seleccionamos Restart.
  11. Por último, vamos a verificar que todo este funcionando correctamente. Para eso abrimos el bloc de notas y escribimos lo siguiente: <?php phpinfo(); ?>. Guardamos el archivo como info.php en C:/Archivos de programa/Apache Software Foundation/Apache2.2/htdocs. Vamos al navegador (Firefox espero) e ingresamos la siguiente dirección: http://localhost/info.php. Si todo está bien, deberíamos ver una página con la información de php y encontrar una tabla titulada mysql.

Un par de notas antes de finalizar:

  • Tengan cuidado con lo que almacenan en la carpeta C:/Archivos de programa/Apache Software Foundation/Apache2.2/htdocs, podría ser accesible desde cualquier parte de internet a través de nuestra dirección IP. No necesariamente lo es: depende del modo y opciones de conexión.
  • Recomiendo phpMyAdmin para manejar la base de datos.

Una vez más, esta pretende ser una guía de rápida lectura. Pueden buscar en internet y en los archivos readme de cada software muchísima información sobre configuraciones avanzadas. Si tienen algún problema, estoy a las órdenes para ayudar.

  1. 22 respuestas a “Instalar Apache + PHP + MySQL en Windows (guía rápida)”

  2. Por Mario el Mar 4, 2008 | Responder

    Te dejo mi logo si querés ponerlo tipo el de espocoserio. http://es.geocities.com/elpizzo/logomariouy.JPG .

    Ya compré la entrada
    saludos, MaRio

  3. Por Andruqui el Mar 6, 2008 | Responder

    Te dejo el link de la página oficial del proyecto xampp.
    Yo lo uso hace años y lo recomiendo como una salida mas que rápida

    http://www.apachefriends.org/en/index.html

    Saludos
    Andrés

  4. Por martin el Mar 6, 2008 | Responder

    Muchas gracias Andrés por el aporte! A ver cuando actualizas tu blog!

    Un saludo,
    martin.-

  5. Por julio el Mar 9, 2008 | Responder

    Estimado martín, he seguido los pasos totalmente como has dicho pero no logro levantar el servidor, es mas si hago un testo me dice que no puede levantar el modulo de php, pero ahí no termina ya que sin estas lineas en conf de apache tampoco logro ver el saludo de bienvenida de apache, alguna idea de por donde mirar para salir de esto, gracias miles

  6. Por martin el Mar 9, 2008 | Responder

    Hola Julio,

    El mensaje de bienvenida de Apache debería verse al poner http://localhost en el navegador. Es una página blanca que en texto negro dice “It works”.

    Si esto no funciona, mucho menos lo va a hacer el módulo de php.

    Mi recomendación es que te fijes en el system tray el estado del servidor Apache, que te fijes poniendo http://localhost en el navegador y que lo reinicies o reinstales si no está andando.

    Contame que sucedió.

    Un saludo,
    martin.-

  7. Por --==[Sing88]==-- el Mar 12, 2008 | Responder

    buen articulo men jejeje

  8. Por Berto el Mar 17, 2008 | Responder

    Yo cuando empecé a estudiar PHP de algunos ebooks traté de instalar sin éxito todo en forma separada, como explicás en el post.
    Haciendo un poco de investigación, me topé con EasyPHP. Es un programa que instala y configura todo solo.
    Saludos

  9. Por martin el Mar 19, 2008 | Responder

    Esos programas estàn buenos pero a veces uno necesita alguna cosa màs, alguna cosa menos o alguna configuraciòn especial.

    Un punto bueno de la instalaciòn manual es que en el momento instalas las ùltimas versiones. Un punto en contra es que para actualizar tenes que estarlo haciendo por separado.

    Saludos,
    martin.-

  10. Por Santiago el Abr 18, 2008 | Responder

    Hola Martin Muy bueno el informe ahora como hago yo luego de hacer todo esto para no contratar un dominio? o sea que yo tenga todo y de el nombre de dominio ej. pepito.com Gracias

  11. Por martin el Abr 18, 2008 | Responder

    Santiago, no sé si lo dije por ahí pero este artículo fue escrito pensando en un servidor local (para pruebas). Un servidor local al que podrías acceder vos o alguien de forma remota usando la IP (tener en cuenta routers y modo de conexión para que funcione).

    Si lo que vos queres hacer es montar un servidor para alojar sitios (con dominio), vas a tener que hacer unas cuantas cosas más dependiendo de tus necesidades, de la conectividad que tengas -ip fija o ip dinámica por ejemplo- y de si será un servidor remoto o no. Por lo pronto algún programa que te gestione las DNSs, un servidor de FTP o algo más completo como DirectAdmin, Virtuozzo Panel, etc. Debes cuidar también la seguridad. Hay empresas de hosting que permiten el “Housing”, la computadora es tuya pero oficia de servidor en las instalaciones de ellos.

    Saludos,
    martin.-

  12. Por Carlos el May 1, 2008 | Responder

    Muchas gracias, pude instalar todo y funciona.

  13. Por Oscar el May 5, 2008 | Responder

    Saludos Martin.. seguí los pasos uno por uno del tutorial pero a la hora de reiniciar el servidor me aparece este mensaje:

    http://www.fotazas.com/v2_photo_2cce04.jpg.htm

    y cuando coloco el test configuration del apache me aparece este otro:

    http://www.fotazas.com/v2_photo_b11963.jpg.htm

    lo intente ya tres veces..desintalando y reinstalando cada vez que intento de nuevo, no se que este haciendo mal. Le agradesco su respuesta…….Gracias

  14. Por martin el May 5, 2008 | Responder

    El problema Oscar seguramente este en el tipo de comillas que usas cuando editas los archivos php.ini y httpd.conf. Si lo que hiciste fue copiar y pegar desde el artículo, quizás las comillas que salieron no son las que corresponden. Mi sugerencia es que arranques de cero y lo que escribas en esos archivos sea ingresado a mano, con el teclado.

    Espero tu respuesta.

    Saludos,
    martín.-

  15. Por Oscar el May 6, 2008 | Responder

    Realice todo de nuevo, y parece que ya esta todo bien para poner en marcha lo que lo voy a utilizar (simple blog php y pmwiki) pero lo raro es que no me sale el ejemplo del info.php que esta en su respectiva carpeta…..no se que detalle deje pasar, el caso es que en el navegador me sale el error 404.
    Igualmente Martin muchas gracias por facilitarnos el tutorial y por su atencion prestada.
    Saludos.

  16. Por Laucien el Jun 8, 2008 | Responder

    Buenos dias. Estoy tratando de instalar una coopia de SMF (Simple Machines Forum) en mi computadora para hacer unas pruebas, hasta donde tengo entendido lo unico que necesito es apache, mysql y el mod de php que ya los tengo y gracias a tu tutorial pude instalar lo que mas me complicaba (el mod de php para apache) pero cuando trato de ejecutar la instalacion del foro me sale este cartel:
    http://img249.imageshack.us/img249/3356/clipboard01jb2.jpg

    ¿Tenes idea de que es lo que puedo estar haciendo mal o me puede faltar? ya estoy hace 2 semanas con este problema y me esta cansando XD.

    Muchas gracias.

  17. Por martin el Jun 9, 2008 | Responder

    Buenas noches. El problema parecería ser que el módulo de mySQL no está siendo cargado correctamente por php.

    Si seguiste los pasos como expliqué en esa guía, el único problema que se me ocurre es que hayas “copiado y pegado” lo que hay que poner en el archivo php.ini y las comillas hayan quedado incorrectas. En ese caso deberías escribir todo a mano.

    Probá hacerte una página php con phpinfo (como expliqué ahí) y fijarte si está siendo cargado el módulo mySQL.

    Contame que pasó.

    Saludos,
    martin.-

  18. Por Javi el Sep 1, 2008 | Responder

    El caso es que todo funciona y cuando pongo http://localhost/info.php,me sale ((precisamente lo que hay en archivo php.info pero))pero no hay ninguna tabla.Disculpad mi ignorancia…soy nuevo en todo esto.

    Un saludo y gracias

  19. Por martin el Sep 3, 2008 | Responder

    Javi, con php funcionando, de ninguna manera un archivo .php podría mostrar lo que hay dentro. Te mostrará la información correcta o te dará un error de compilación.

    Si te entendí bien y ese es el problema, lo que podría estar mal configurado es php. Te sugiero que escribas a mano las modificaciones a los archivos ya que al copiar y pegar se ponen unas comillas “” raras que no hacen funcionar bien.

    Espero tu respuesta.

    Saludos,
    martin.-

  20. Por diego el Oct 17, 2008 | Responder

    a ver si me podes ayudar…
    compre un dominio en antel , ej: http://www.midomino.com.uy , ahora tengo instalado apache en mi pc , y funciona bien , el tema es q estoy conectado a traves de un router , como hago para q cuando pongo la direccion de http://www.midominio.com.uy en el navegador me muestre la pagina.
    En estos momentos si pongo en el navegador la direccion ip de mi router , me muestra bien la pagina , tengo redireccionados los puertos de http a mi pc
    gracias de antemano
    sdls
    Diego

  21. Por martin el Oct 18, 2008 | Responder

    Diego,

    Si tenés IP dinámica, vas a tener que utilizar un servicio de DNS (por ej. Afraid.org) al que puedas actualizarle con un programita tu IP. En general, el programita te lo da el propio servicio de DNS.

    De la configuración hacia adentro del router no tengo idea. Yo tengo un servidor local y router. Si pongo mi IP conectado por router, no llego al servidor local. Si pongo la IP contectado directo al módem ADSL sí. Es con la IP pero probablemente se necesite alguna configuración en el router..

    Saludos,
    martin.-

  22. Por diego el Feb 24, 2009 | Responder

    Hola martín, mirá como no tengo dinero para pagarme cursos de webmaster, y aun teniendolo no se si lo haria dado que muchos que conozco no me recomiendan las academias, sino mas bien libros.
    Mi duda es la siguiente ,hay alguna manera siguiendo tu tutorial de crear un sistema de login y registro de usuarios? -Qué deberia modificar de los pasos que mencionaste en el articulo ?
    Saludos.Diego
    PD:Estoy intentando hacer un proyecto a futuro, el dominio que tengo sin desarrollar es jubutu.com (Tal vez ponga un directorio de descargas u juegos online)

  23. Por martin el Feb 24, 2009 | Responder

    Diego, este tutorial te puede servir para instalar en tu máquinas las herramientas necesarias para empezar a programar en php. No es que lo necesites para escribir código pero te va a permitir ver el resultado como web en un servidor local.

    También hay IDEs como ZendStudio que incorporan herramientas para visualizar el resultado en una especie de consola. Y mil variantes más con las que no te voy a marear.

    Una posibilidad para hacer un sistema de registro y logueo de usuarios es justamente php. Te recomiendo empezar de 0 en la documentación oficial: http://php.net. En particular para el logueo se utilizan las sesiones y para el registro podrías usar una base de datos. Deben haber tutoriales sobre eso por ahí.

    Saludos,
    martin.-

Postear un comentario