Instalar Apache y PHP en WinXP

La presente es un breve guia como instalar Apache y PHP en PCs con Sistema Operativo Windows XP, esto debido a que muchas personas desarrollan sus aplicaciones en su computadores personales y al finalizar el proyecto recién lo publican en un host de producción. Por favor tenga en cuenta que este tipo de instalación es solo para propósitos de desarrollo, por favor no lo utilice en entorno de producción.

Conseguir el Software

El primer paso es conseguir el software que vamos a instalar. Para ello descargamos desde las respectivas webs:

  • Apache: descargamos la versión 2.0.xx para Win32, actualmente apache_2.0.59-win32-x86-no_ssl.msi
  • php.net: descargamos los Windows Binaries de la versión 4.x.x, actualmente PHP 4.4.4, en esta caso descargar el ZIP y no el instalador.

Instalar Apache

Apache HTTP, el servidor Web por excelencia es muy sencillo de instalar, para ello viene con un instalador que nos ayudará en este proceso. Primero ejecutamos el instalador, primero aceptamos los términos y condiciones del software luego aparecerá una pantalla para la configuración de apache.

apache-install.gif

En esta pantalla nos solicitan los siguiente datos:

  • Network Domain: Es el nombre del dominio donde esta nuestra PC, nosotros colocaremos localhost
  • Server Name: Viene a ser el nombre de nuestro servidor, en nuestro caso localhost.
  • Administrato's Email Address: es la dirección de email del administrador del servidor, colocamos nuestro email personal.

En la siguiente pantalla seleccionamos el tipo de instalación típica y dejamos que el instalador configure e instale el servicio en nuestra PC. Una vez finalizada la instalación, podemos verificar que el servidor web esta funcionando correctamente colocando en la barra de direcciones de nuestro browser cualquiera de las siguientes opciones:

  • http://localhost/
  • http://127.0.0.1/
  • http://nombre_maquina/ por ejemplo http://pcmarita/
  • http://numero_ip/ por ejemplo http://192.168.1.36/

Si la instalación ha sido exitosa aparecerá una página conteniendo un aviso de confirmación de la instalación.

apache.gif

Apache por defecto se instala en la carpeta: C:\Archivos de programa\Apache Group\Apache2, aquí encontraremos una carpeta conf donde están los archivos de configuración y la carpeta htdocs el cual es el directorio de publicación, es decir que cualquier archivo que coloques en esta carpeta se reflejará en el servidor web. Por ejemplo si colocamos una carpeta llamada foro y dentro de ella hay un archivo lista.htm, la dirección de este archivo será: http://localhost/foro/lista.htm

Instalar PHP

Para instalar PHP si tendremos que hacer uso de la instalación manual pues el instalador generalmente no funciona. El primer paso es extraer el archivo descargado y colocar los archivos a una carpeta, generalmente c:/php (Puedes elegir la ruta que prefieras). Luego de ello copias el archivo php.ini-dist de la carpeta de instalación de PHP al directorio del sistema, es decir a c:/WINDOWS y renombrarlo a php.ini

El siguiente paso es configurar PHP para que funcione con Apache, para ello abrimos el archivo php.ini y hacemos las siguientes modificaciones:

  • doc_root: es la ruta de la carpeta de publicación de Apache en nuestro caso seteamos: doc_root = C:\Archivos de programa\Apache Group\Apache2\htdocs
  • extension_dir: es el directorio donde se encuentran las extensiones de PHP, en nuestro caso: extension_dir = C:\php\extensions
  • upload_tmp_dir: Carpeta donde se subiran los archivos temporalmente al hacer upload, en nuestro caso upload_tmp_dir = C:\WINDOWS\Temp
  • session.save_path: Ruta donde se almacenará los archivos relacionadas a las sesiones de los usuarios, en nuestro caso session.save_path = C:\WINDOWS\Temp

El siguiente paso es configurar Apache para que soporte las llamadas de archivos .php, para ello abrimos el archivo de configuración httpd.conf ubicado en: C:\Archivos de programa\Apache Group\Apache2\conf, en este archivo agregamos las siguientes lineas:

  1. ScriptAlias /php/ "c:/php/"
  2. Action application/x-httpd-php "/php/php.exe"
  3. AddType application/x-httpd-php .php

Donde se tiene que c:/php/ es la carpeta de instación de nuestro PHP. Estas tres lineas las podemos agregar al final del archivo http.conf o podemos buscar el bloque donde se encuentra cada uno de los comandos (ScriptAlias, Action, AddType) y agregarlos al final de cada bloque.

Otro punto adicional es configurar Apache para que reconozca las páginas index.php como páginas por defecto, para ellos buscamos DirectoryIndex y agregamos index.php con lo cual quedaría:

  1. DirectoryIndex index.php index.html index.html.var

Ahora detenemos y luego iniciamos el servidor Apache para tener lista nuestra instalación. Para finalizar creamos un pequeño archivo llamado test.php en nuestra carpeta htdocs para probar el funcionamiento de PHP. Escribimos el siguient código:

  1. <?php phpinfo(); ?>

Si la instación ha sido existosa se mostrará la siguiente pantalla con detalles de la configuración de PHP.

phpinfo.gif

Listo señores ya tenemos instalado PHP, ahora podremos realizar nuestro desarrollo en un entorno local con todas las caracteristicas de un servidor web, como les dije al inicio, esta instalacion es solo para propositos de desarrollo para usarlo en producción hay muchos mas parametros para configurar.

Respecto a MySQL la la instalación es mucho mas sencillas pues viene con un instalador el cual te guia paso a paso y no hay nada que configurar.

Posts Relacionados

Comentarios Total 55 comentarios


Andres Lopez Gomez
Publicado: 28/12/2006 10:48 am

Bueno esa version que esta instalado. es antigua, por que no poner el tutorial de instalacion del nuevo php y la ultima version de apache ?. seria estupenda..

Salusos..

unijimpe
Publicado: 01/01/2007 3:20 pm

Hola, pues elegi PHP4 por que es diferente a PHP5 en temas de MySQL y XML y la mayoria de hosting soportan solo PHP4 asi que es mejor que el desarrollo se haga compatible con la mayor parte de servidores. De todas maneras prepararé una guia para PHP5y el ultimo Apache.

daniel
Publicado: 07/01/2007 10:16 am

a mi no me aparece el ultimo mensaje!!pq no me sale??

unijimpe
Publicado: 07/01/2007 1:19 pm

Cuando no sale el mensaje es por que hubo un error en la instalación, verifica todos los pasos, fijate en los textos que coincidan con los que indica la guia y veras que funciona.

Jordi (elCoco)
Publicado: 19/02/2007 11:49 am

Genial!! Llevaba unos días buscando como hacerlo y después de otros intentos fallidos con otros foros, ahora tengo mi servidor para mis webs PHP perfectamente instalado. Muchas gracias!!!
Jordi

eKix
Publicado: 26/02/2007 6:45 pm

Hola
He seguido el tutorial pero utilizando versiones mas recientes de php y apache, pero al realizar el ultimo paso de php, no me sale el test.php.
Concretamente,si escribo en el navegador “http://localhost/test.php”, me sale “Forbidden

You don’t have permission to access /php/php.exe/test.php on this server.”.
Si pongo solo localhost, me sale la pantallita del apache…

alguna idea de q me esta fallando?

he repasado los pasos y las rutas y todo parece estar correcto

Rodrigo zarate
Publicado: 05/03/2007 3:15 pm

Muchas gracias, estoy comenzando con php y muchas veces necesitaba hacer puebas locales, no habia podido configuar el php para que funcionara. la guia es muy buena.

Jonathan Espinoza
Publicado: 07/03/2007 11:37 am

Excelentes las indicaciones, despues de tantos intentos fallidos al instalar apache y mysql con otros foros entre a tu pagina y encontre lo que realmente queria, ya instale satisfactoriamente mi servidor y ahora si puedo realizar mis proyectos, gracias amigo.

Fabricio Albarran Segura
Publicado: 10/03/2007 5:34 am

hola que tal he leido toda la guia (muy buena) que usted proporcionó al parecer he hecho todos los pasos correctamente, pero a la hora de que usted sugiere que creemes un archivo test.php no entiendo ese paso,¿lo creo en el bloc de notas? ¿y lo guardo con la extension .php? junto con la sentencia
1. esa es mi duda cual es la interfaz de php? lo he guardado con dreamweaver pero me aparece la sencencia
1. mas no la pagina de php, por favor, ojala pueda resolver mi duda muchas gracias.

unijimpe
Publicado: 10/03/2007 11:43 am

Efectivamente un vez finalizada la instalación debes crear un archivo llamado test.php, al tener la extensión .php el servidor ya sabe que lo tiene que ejecutar. Dentro de este archivo recién creado escribes

< ?php phpinfo(); ?>

Esto lo puedes hacer con un bloc de notas o con Dreamweaver dependiendo cual te gusta mas. Personalmente prefiero Dreamweaver por que tiene muchas ayudas para redactar código.

Fabricio Albarran Segura
Publicado: 12/03/2007 6:46 am

excelente, ya he podido hacer todos los pasos correctamente, estupenda guia, muy util, ¿podria usted proporcionarme alguna informacion para crear un modulo de registro de clientes mediante todas estas herramientas? o recomendarme algun tipo de bibliografia? espero recibir prontamente su respuesta muchas gracias por lo anterior.

Fabricio Albarran Segura
Estudiante de UPIICSA

Miker
Publicado: 22/03/2007 12:23 pm

Buenos días a todos!
Estoy configurando un servidor local y luego de instalar Apache me sale el sgte mensaje en una ventana del DOS:

Installing the Apache2 service
The Apache2 service is successfully installed.
Testing httpd.conf….
Erros reported here must be corrected before the service can be started.
Solo se permite un uso de cada dirección de socket : make_sock: could not bind to adress 0.0.0.0:80
no listened sockets available, shutting down
Unable to open logs
Note the errors or messages above, and press the key to exit. 1….

Que puede haber sucedido?

Anteriormente he querido instalar el mismo servidor y no he podido.

y para terminar, luego de escribir

http://Localhost/ me sale un aviso solicitando una clave.

Gracias por sus comentarios.

Miguel Flores Franco
Pixelperú – Arte, Diseño, Web y Teletrabajo http://www.pixelperu.net
Web personal • http://www.floresfranco.com
Telf.: (1) 567 7475 • Cel. (1) 9258 5031 MSN:mflores@pixelperu.com

Miker
Publicado: 22/03/2007 1:04 pm

Ni modo, con la ultima versión parece que no funciona. Gracias por el tiemopo dedicado al soporte en esta materia.

unijimpe
Publicado: 22/03/2007 11:34 pm

Hola, segun parece ya tienes instalado otro programa que esta trabajando en el puerto 80, por defecto los servidores web escuchan las peticiones en el puerto 80. Entonces si ya tienes otro programa que este utilizando este puerto se generará un error. Para resolver este problema la posibilidad es instalar al Apache pero listando en otro puerto, puedes usar el 8080. Si haces esto tus direcciones de prueba serían de la forma:

http://localhost:8080/

KEOPS
Publicado: 26/03/2007 10:35 am

Hola, necesito saber como se configura apache y php para recibir correo en un servidor local, porque me sale el siguiente error

Warning: mail() [function.mail]: Failed to connect to mailserver at “localhost” port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in C:\Archivos de programa\EasyPHP 2.0b1\www\newland\messageSent.php on line 7

unijimpe
Publicado: 27/03/2007 12:29 am

Bueno en realidad necesitar tener instalado un Servidor de SMTP para que puedas enviar correo, yo he probado Imail Server el cual tiene incluido un servidor SMTP el cual puedes utilizar de manera local.

mirka
Publicado: 01/04/2007 4:58 pm

hola, descarge el php 4.0.2 e hice toda la configuracion del apache pero no tengo la carpeta donde se aguardan las paginas para mostrar y por lo tanto no puedo verlas la carpeta es: htdocs.
QUE ME ACONSEJAN QUE HAGA?

Jose Andres
Publicado: 05/04/2007 4:44 pm

Magnifica su ayuda ,estube 6 horas tratando de instalar el apache y php y no podia pero con su ayuda no me tarde ni 5 minutos.
Saludos
Andres Sanchez

Fun and Humor
Publicado: 20/04/2007 3:24 am

I am using WAMP server for PHP.

Everything is ok, but curl function is not working properly.

What is possible solution?

Adult Visuals
Publicado: 20/04/2007 3:28 am

Warning: mail() [function.mail]: Failed to connect to mailserver at “localhost:8080″ port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in C:\wamp\www\eds3\gateway.php on line 1662

I am using WAMP server. For this error what will be solution?

unijimpe
Publicado: 20/04/2007 12:47 pm

Sucede que ni tienes instalado un servidor de SMTP el cual permite hacer el envío de correo. Puedes intalar un servidor de correo SMTP gratuito para que puedas hacer el envío de correo.

Favio
Publicado: 24/05/2007 11:26 pm

Hola

en la pagina de pho la version mas cercana al php 4.4.4 era el 4.4.7

Yo instale el 4.4.7 y no se en qeu afecta eso… por qeu hice todo y al escribir lo del test en el dreamweaver y escribir http//localhost/test.php/
me dice qeu no se encontro la pagina.

Tengo qeu eliminar los archivos de la carpeta htdocs??

Reinicie mi pc, y ahora que escojo control apache y Star.. me dice un mensaje con respecto al puerto 80…

Creo qeu tengo muchos problemas Pero podrias ayudarme unijimpe!

GRACIAS!!

Favio
Publicado: 24/05/2007 11:42 pm

Hola soy yo denuevo.
Ya pude ver el mensaje con la diferencia de q a mi me aparece php447.
Y bueno queria preguntarte:
- que version de Myswql deberia instalar?
- Puedo eliminar todos los archivos q estan en la carpeta htdocs??
- como almaceno mas de una pagina??
- y finalmente… luego de crear la pagina con dreamweaver en PHP, como la subo a internet?? Solo defino sitio desde dreamweaver?? o cambio el DNS??

Bueno se qeu te inunde de preguntas, respondeme las que quieras, las qeu puedas o las que tengas tiempo, se qeu es abusar de tu ayuda, pero con intentar no pierdo nada.

GRACIAS!

unijimpe
Publicado: 26/05/2007 6:40 am

Respecto a MySQL instala la ultima versión de la serie 4.x.x. Los archivos que aparecen en la carpeta htdocs son solo de ejemplo puedes eliminar todos los archivos si lo deseas. Para almacenar mas de una página simplemente ponla como carpetas en htdocs, por ejemplo si tienes una carpeta devsite la url para esta carpeta sería:

http://localhost/devsite/

Finalmente para subirla a internet, necesitas comprar un hosting, ellos te darán una cuenta de FTP con lo cual puedes subir tu página a internet.

Miguel
Publicado: 31/05/2007 5:22 pm

Hola, he seguido los pasos que indicas y al intentar visualizar cualquier documento PHP el explorador me indica el siguiente error:

Forbidden

You don’t have permission to access /php/php.exe/test.php on this server.

¿Alguna solución?

Miguel
Publicado: 31/05/2007 10:32 pm

La solución al problema anterior es usar exactamente las versiones indicadas al comienzo de este tutorial:

PHP 4.4.X
Apache 2.0.X

Con versiones superiores esta configuración no es suficiente.

jose
Publicado: 16/06/2007 12:44 am

hola efectue todos los pasos pero al tratar de levantar test.php sale una ventana que si deseo abrilo, guardarlo y le digo abrir pero me muestra una pantalla en blanco ???????

José Rangel
Publicado: 28/06/2007 8:34 pm

la version mas sercana de php fue 4.4.7 todo esta bien configurado.. afecta esa version en cuanto al test.php? porque me dice que no tengo permiso para ver ese arhivo

José Rangel
Publicado: 28/06/2007 8:46 pm

ok ya solucione el problema anterior… pero ahora me sucede lo que a otro… me pide abrir o guardar el arhivo… lo abro y dice que identificador del numero no es valido

José Rangel
Publicado: 28/06/2007 8:54 pm

no… bueno ya resolvi ese problema… Para los que les sucede esto… en systray (barra de procesos) abrar el apache monitor… detenganlo y luego inicienlo otra vez… listo ahora si mostrar el test.php gracias

Luis Enrique
Publicado: 30/06/2007 4:07 am

si ya instale el Appserver, que viene con los 3 componentes tambien tengo que hacer estos pequeñas modificaciones, como empiezo a utilizar.. php.

Juan
Publicado: 09/07/2007 9:34 pm

Warning: mail(): Failed to connect to mailserver at “localhost” port 25, verify your “SMTP” and “smtp_port” setting in php.ini or use ini_set() in c:\appserv\www\php\form2.php on line 137

Juan
Publicado: 09/07/2007 9:49 pm

nose como solucionar el error anterior

Yovanny
Publicado: 27/08/2007 6:49 pm

Hola, instale la ultima version de wamp y me da el siguiente error:

Forbidden

You don’t have permission to access

¿Que puedo hacer?

ariana
Publicado: 30/08/2007 2:11 am

lo que no me sale es el último paso…
Ahora detenemos y luego iniciamos el servidor Apache para tener lista nuestra instalación. Para finalizar creamos un pequeño archivo llamado test.php en nuestra carpeta htdocs para probar el funcionamiento de PHP. Escribimos el siguient código:

ariana
Publicado: 30/08/2007 2:12 am

Como encuentro el directoryindex

Otro punto adicional es configurar Apache para que reconozca las páginas index.php como páginas por defecto, para ellos buscamos DirectoryIndex y agregamos index.php con lo cual quedaría:

DirectoryIndex index.php index.html index.html.var

unijimpe
Publicado: 31/08/2007 12:22 am

Para configurar el directoryIndex tienes que hacerlo en el archivo httpd.conf. Luego de la instalación de PHP debes reiniciar el servicio de Apache para que reconozca al PHP recién instalado, luego de ello para verificar que la instalación haya sido correcta, se crea un archivo de prueba en la carpeta htdocs de Apache.

Anita
Publicado: 05/01/2008 7:05 pm

Gracias me faltaba setear una variable y direccionarla a la carpeta temporal c:/windows/Temp otras guias no lo indicaban pero aqui encontre la solucion despues de 3 intentos fallidos ya lo tengo funcionando.
No hay nada como los foros para compartir conocimiento

carlos
Publicado: 28/01/2008 8:49 am

He colocado en un directorio de mi hosting en godaddy una hoja.php con otra .html la cual mediante un formulario invoca acciones en la .php, pero al ejecutarse lo que aparece es el codigo fuente de la hoja.php.Tendrian la amabilidad de explicarme que puedo hacer para que se ejecute el php?.

Jimmy
Publicado: 21/02/2008 1:42 pm

Hola podrias ayudarme realize todos los pasos pero al probar el php se abre el archivo .txt con lo q puse dentro de test.php

ited
Publicado: 11/04/2008 5:48 pm

Para complementar solo un poco, si causa algunos problemas la instalación de PHP, se debe verificar que el httpd.conf debe incluír una referencia hacia la dll de php, ya que sin esa carga de módulos Apache no hará más que traer el php en modo de texto:

LoadModule php5_module C:/php5/php5apache2_2.dll

Saludos y gracias por tu guía, me fue de mucha utilidad!

Isis
Publicado: 13/08/2008 11:04 am

Hola muchas gracias me fue de bastante utilidad solo como comentario en el codigo que se agrega en httpd me marcaba un error en el ScriptAlias y lo resolvi de la siguiente manera primero no puse ScriptAlias y agregue el código como sigue al final y reinicie mi apache.

LoadModule php5_module “C:/php/php5apache2_2.dll”
Action application/x-httpd-php “/php/php.exe”
AddType application/x-httpd-php .php
PHPIniDir “C:\php”

Espero a alguien le sirva de algo… hasta pronto

fusto
Publicado: 15/09/2008 1:58 am

ami me funciono bien con PHP 5.2.6 y apache 2.2… faltaron agregar los modulos :S

Nicolas
Publicado: 12/01/2009 5:35 pm

Muchas gracias por compartir conocimiento, ahora toca empezar a programar PHP a ver que sale de todo esto +10

Esteban
Publicado: 27/01/2009 6:29 am

Exelente guia para una instalación sencilla y funcional. Gracias por el post

Esteban
Publicado: 27/01/2009 7:32 am

Bad Request

Your browser sent a request that this server could not understand.

Me aparece esto y ya prove con los post de los lectores y no hay manera de que lo haga funcionar. Quien sabe como configurarlo? tengo instalado apache 2.2 y php 5.2.6

George
Publicado: 18/02/2009 6:44 pm

hola, tengo un super problemon,

ya configure apache y php, peroo, cuando entro a :

http://127.0.0.1/test.php

me aparece que si deseo “abrir” o “guardar”.

si alguien sabe ke ondas, porfas una ayudita.

pedro
Publicado: 28/03/2009 2:58 pm

me sale todo bien, mi problema es cuando pongo en el explorador “http://localhost/test.php” me aparece la opcion de descargar el archivo y no la pagina que dices que debe salir algun con sejo?? gracias

pedro
Publicado: 28/03/2009 3:15 pm

referente a lo mismo que te acabo de escribir yo creo que el problema debe de estar en el ultimo paso tal vez no haya escrito la ultima linea donde devia por eso no me traduce el apache php a html (no se si he dicho una burrada ya me dices) gracias de nuevo

leticia
Publicado: 09/04/2009 11:48 am

por favor no se que es lo q sucede pero… hize todos los pasos que indican pero no me resulta la instalación .
a la hora de hacer la prueba no me sale la página conteniendo el aviso de confirmación de la instalación.
Por favor una guía al respecto se lo agradeceré

cristian
Publicado: 30/04/2009 9:18 pm

gracias habia tenido un problema al crear el archivo no me salia ya que lo cree en txt luego lo hise en html y al guardar lo cambien por test.php y resulto estoy muy contento ya que habia estado todo el dia en esto saludossss

leny
Publicado: 21/05/2009 3:08 pm

realice todos los pasos pero aun me arroja un error de syntax

dice asi

syntaz erroro on line 487 of c:apache/conf/httpd.conf: cannot load c:/php/php5apache2.dll into server: no se puede encontrar el m/xf3dulo esepeciicado

Maira
Publicado: 26/05/2009 12:22 am

Hola como puedo cambiar de dominio mi pag. actual ya que esta por caducar y contrate un nuevo dominio. que tengo que cambiar

George el Ermitano
Publicado: 06/07/2009 1:02 am

Instale el apache, le active mode rewrite para no usar url dinamicas pero las imagenes no me las reconoce y al parecer las url de las imagenes las agarra como que fuese direccion y me muestra error 404

chino
Publicado: 08/02/2010 1:19 pm

¡¡¡¡¡SOLUCION!!!!

Forbidden

You don’t have permission to access / on this server.

Editar el archivo de configuracion de apache httpd.conf y reemplazar las lineas:

Order deny,allow
Deny from all
Allow from 127.0.0.1

por estas lineas:

Order allow,deny
Allow from all

despues reiniciar los servicios

suerte

 

Comentar

En este blog los comentarios están moderados, no aparecerán inmediatamente en la página al ser enviados. Por favor, evita los comentarios ofensivos u obscenos por que no serán aprobados.

(Requerido)

(Requerido, no será publicado)

(Requerido)

(Tags aceptados: <a> <em> <strong> <code> <ul> <li>)