hola que tal, alguno de ustedes, programadores windows se ha preguntado que tan dificil es instalar php, apache y mysql en linux ? Me he topado con gente que desconocia el hecho de que estas aplicaciones se ejecutaban en linux, de hecho, si estoy bien enterado, php y apache se desarrollaron primero para sistemas Unix y despues migraron a Windows.

Pues bien, me he pasado por los sitios de php, apache y mysql y la instalacion y configuracion de cada uno de ellos en Linux es un poco mas complicado y tedioso que en Windows, sin embargo… Gracias a dios existe Ubuntu, “Linux for human beings”, linux para el ser humano… es tan sencillo que da risa, por eso me eche todo este rollo introductorio, para darle cuerpo al POST =D

Bueno, la mayoria ya sabra que son 3 aplicaciones que se llevan muy bien, pero no son dependientes las unas de las otras :

MySql : Es un servidor de Bases de Datos Relacionales (DBMS)

Apache: Es un servidor Web (web server)

Php: Es un lenguaje orientado a entorno web que se ejecuta del lado del Servidor.

Ahora, vayamos al grano:

1) Asegurarse que en Ubuntu estan activados los repositorios Universe y Multiverse (un repositorio es una fuente de localidades en internet para aplicaciones), para esto, necesitan abrir el archivo sources.list

sudo gedit /etc/apt/sources.list

en el archivo, deben estar descomentariadas las siguientes lineas : (tengan en cuenta que mi version es ubuntu dapper 6.06 LTS, por lo que las lineas de codigo podrian no ser identicas)

deb http://security.ubuntu.com/ubuntu dapper-security universe
deb-src http://security.ubuntu.com/ubuntu dapper-security universe

2) Actualizar la lista de repositorios

sudo aptitude update

3) Instalar Apache 2 (el aptitude, como el apt-get, o el synaptic, hacen las configuraciones automaticamente, uno solo tiene que decir “S” ! ) (aprox 2 mb)

sudo aptitude install apache2

4) Instalar php5 (aprox 2mb)

sudo aptitude install php5

5) Instalar las librerias que permitiran interaccion entre MySql, apache y php (aprox 500kb)

 sudo aptitude install libapache2-mod-auth-mysql php5-mysql

6) Instalar MySql server 5 (aprox 50 mb) (Ojo, hay muchos que prefieren MySql 4.1, yo elegi instalar MySql 5, pero pongo las dos lineas para que cada quien elija la version que mas le agrade

MySql 5 : sudo aptitude install mysql-server-5.0

MySql 4.1 : sudo aptitude install mysql-server-4.1

7) Reiniciar los servicios para ponerlos a prueba

sudo /etc/init.d/apache2 restart

sudo /etc/init.d/mysql restart

8) por ultimo, ponemos a prueba cada una de las aplicaciones

Apache: abrimos el firefox o konkerror, y tecleamos en la barra de direcciones : http://localhost

debera aparecernos una pagina donde dice que apache esta instalado y trabajando, para alojar nuestros archivos en el servidor web, en ubuntu la carpeta esta en /var/www

MySql: abrimos la consola y escribimos : mysql -u root

debe salirnos un mensaje de bienvenida y el label del command line ahora debe decir mysql>

php: aqui es necesario crear un archivo y almacenarlo en el directorio raiz del servidor (o crear una subcarpeta, tu decides) /var/www (ojo, el archivo debe tener la extension php para que el servidor php lo reconozca)

sudo gedit /var/www/archivo_como_se_me_de_la_gana.php

dentro de ese archivo copiamos el codigo php que se nos ocurra, yo recurro al famoso echo, o al phpinfo()

<?

echo ” que onda wey?”;

phpinfo();

?>

por fin, ejecutamos el archivo escribiendo en el firefox : http://localhost/archivo_como_se_me…php

taran !!! la verdad, mas sencillo no puede ser. saludos a todos los que leyeron el post y dijeron “chale, eso esta bien sencillo!”

aqui les dejo las dos direcciones de donde obtuve la informacion para compartirla con ustedes, como ven, casi casi hice un Copy Paste, jaja, pero, en verdad, jamas habia visto algo tan simple en mi vida.

http://ubuntu.chapinware.com/2006/05/22/como-instalar-apache-mysql-php5/

http://www.luzblanco.com/ltimas/instalar-lamp-apache2-mysql5-php5.html

35 Responses to “Instalar php, mysql y apache en ubuntu”

  1. x-logan Says:

    chido buena info

  2. alexserver Says:

    que bueno que te sirvio carnal, proximamente veremos como instalar las herramientas cliente de MySql

  3. petrone7 Says:

    Gracias, más claro ni el agua.

    saludos

  4. luis Says:

    hola hola, y que tal, como salgo a la web? cuando entro por mi ip no me carga

    dale saludos!

  5. alexserver Says:

    ah mira, lo que tu quieres es que los demas vean tu servidor web con solo darles la direccion de tu ip ? bueno, mira, esto depende del tipo de conexion a internet que tengas:
    si usas infinitum lo mas probable es que tu modem tambien sea un router, y tu ip empiece con 192.168… lo que quiere decir que tu ip esta en una red interna generada por tu router, quien tiene la ip con salida a internet es tu router, para averiguarlo tienes que irte a la pagina de configuracion del router y husmear por ahi hasta dar con ella (WAN public ip) una vez averiguado la ip, esto no es suficiente, ya que cuando un extraño teclee la ip, accedera al router por asi decirlo, no a tu compu, entonces necesitas configurar el router para que redireccione la peticion del puerto 80 (que es el que usa apache por default) a la ip que te tiene asignado el router.
    jaja es un rollo no?
    claro esto es si tu salida es a traves de un router, si sales a traves de un cablemodem o un modem sial up no creo que tengas probleas, tu ip es unica.
    saludos

  6. Omar Says:

    Exelente manual:p

  7. Alex Says:

    Ok. Gracias ..mas sencillo no se puede
    te felicito por compartirlo .. asi el
    software libre va para arriba.
    Cuidate.

  8. alexserver Says:

    muchas gracias por su feedback, ultimamente he usado freebsd y creo que voy a compartir mis dolorosas y frustrantes pero reconfortantes experiencias con ustedes, saludos

  9. karo Says:

    muy buen manual amigo
    pero cuando cargaba mi ejemplo.php marcaba error de acceso denegado en Mozila esto hay que corregirlo cambiando los permisos de las carpetas

    tipear el siguiente comando
    $ sudo chmod 777 /var/www
    $ sudo chmod 777 /var/www/*.*

    saludos

  10. alexserver Says:

    si karo, tienes razon, lo que sucede es que usualmente losarchivos se crean con permisos exclusivos para el usuario que los genera. pero, ojo, si tu servidor web es publico (es decir, en verdad tiene salida a internet o una intranet) debes proteger los archivos contra escritura, por lo que te recomiendo la opcion 755, que son permisos de escritura para el usuario propietario del archivo, y permisos de lectura para los otros usuarios. Otro tip, si escribes la opcion -R los permisos se aplican recursivamente, es decir, se extienden en todos los arhivos y subcarpetas contenidos en la carpeta padre. El comando quedaria asi:
    $ chmod -R 755 /var/www
    saludos

  11. karo Says:

    ok. muchas gracias por el detalle alexserver

  12. neubius Says:

    ke bien hasta ahorita me a kedado claro los pasos ke posteaste gracias que dios te paga con mas banda ancha de internet jejejjej

  13. Carlos Says:

    Uf, ni hablar, mas sencillo imposible. Se agradece…

  14. diannita86 Says:

    Hola! hice lo que me dices. Tengo Kubuntu 7.04. El mysql bien, el apache bien, perocuando quiero el php, simplemente no aparece nada, es decir, deberia abrirse un archivo ke dijera “que onda wey”, pero no es asi, aparece como si no reconociera el archivo….
    que hice mal?

  15. j8a Says:

    En mi Pc corren Ubuntu 7.04 y Win2x, en dos discos separados. Había instalado apache, mysql y php5 desde Synaptic y me faltaba saber cómo iniciar apache y el resto de los servicios. Seguí tu explicación que resultó brillante, en dos minutos arreglaste el problema de este novato. Me alegra mucho saber que hay amigos tan cerca. Saludos cordiales.

  16. oscar Says:

    Muchísimas gracias.

  17. Jvr Says:

    Genial, acabo de instalar Ubuntu en una máquina virtual con virtualBox, no tengo mucha experiencia en linux y con este artículo ha sido coser y cantar.


  18. [...] de php5, apache2 y mysql 5 en ubuntu, este es un artículo invaluable. Visiten el sitio de Alexserver para más [...]

  19. alexserver Says:

    Es realmente sencillo no ?
    Escuchen, en este año he absorbido mucho conocimiento acerca del desarrollo web, especificamente hablando del lado de un servidor ubuntu-linux, asi que si alguien tiene alguna duda sobre como manejar apache, mysql y php, y esta en mis manos ayudarle en sus interrogantes, con mucho gusto.

  20. Joel Says:

    Hola! Gracias por el tuto.! :)
    Habría una forma de cambiar la ruta de /www para los usuarios sin privilegios?
    Por ejemplo en “/home/a-non-root-user/Documentos/www”?
    Según me dicen que tengo que cambiar algo de la configuración de Apache, pero no sé :(
    Muchas gracias.

  21. Gabriel Says:

    Recomiendo si estan instalando Mysql es tambien instalar el phpmyadmin para administrar las bases de datos, usuarios, etc.
    para instalarlo tipear lo siguiente:
    sudo apt-get install phpmyadmin
    luego una vez instalado probarlo ingresando a:
    http://localhost/phpmyadmin/

    Saludoos
    Gabo

  22. Gabriel Says:

    Para eso tendrias que crear un directorio con permiso de lectura, escritura para todos los usuarios, y en el archivo /etc/apache/sites-enable/000-default cambiar la ruta de la parte que dice DocumentRoot y el directorio, quedaria asi

    DocumentRoot /ruta/aldirectorio/creado

    Options FollowSymLinks
    AllowOverride None

    Las opciones, las podes mantener como estaban o modificar a tu gusto

    Espero te sirva, saludosss
    Gabo

  23. Gabriel Says:

    en la parte de abajo que dice directory tambien le tenes que poner la ruta al directorio que creaste

  24. miguel Says:

    Hola soy nuevo con ubuntu y me parece que lo anterior esta mas que perfecto, mas claro imposible, pero a mi me funciono solo con el lynx que es el navegador de ubuntu en modo texto, me trate de conectar desde otra maquina poniendo el mi navegador http://direcion ip pero no me puedo conectar, que hice mal?.

    Ayuda pliss

  25. Pollo Says:

    Que buena onda carnal gracias no sabia que era tan facil ya estaba bien desesperado, chido

  26. luis Says:

    hola te cuento que hice todo pero aun así me sale un error al reiniciar apache2 es este:
    * Forcing reload of web server (apache2)… apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
    httpd (no pid file) not running
    apache2: Could not reliably determine the server’s fully qualified domain name, using 127.0.1.1 for ServerName
    (98)Address already in use: make_sock: could not bind to address 0.0.0.0:80
    no listening sockets available, shutting down
    Unable to open logs
    [fail]

    y pues sin eso es como nadar en el lodo, de antemano gracias por la ayudita

  27. ernesto Says:

    Muy buena la explicación. Al fin pude instalar todo este asunto.

    Muhcas gracias.

  28. ivanosky8 Says:

    hola gracias por tu ayuda en los pasos a seguir para la instalacion de apache!!
    fue de mucha ayuda gracias!

  29. Esteban Pozo Says:

    Compadre una duda… como entro a la administracion de MySql? agradeceria la respues… gracias… muy buen manual!

  30. Cez Says:

    hola q gran manual gracias x la ayudadit t agradesco m avise cuado subas un tutorial para rrdtool .

  31. ari chav Says:

    felicidades y gracias por su ayuda

  32. Sergio Says:

    Perfecto!!! Muchas gracias!!! Saludos

  33. Hernan Says:

    Muchas gracias por la info… solo tengo un pequeño problema para usar algun cliente de MYSQL desde otra PC.
    En mi caso tengo el server corriendo con linux tal cual tu descripcion, pero quiero usar desde una PC con windows un cliente para poder trabajar la base de datos. Creo un usuario ‘usuario’ @ ‘%’ , le doy todos los permisos pero no tengo coneccion. tambien intente en lugar de usar % poner el IP de mi maquina y tampoco funciono.
    Desde ya te agradezco tu ayuda =)

  34. freeman Says:

    que tal. tiene poco tiempo que instale ubuntu en mi computadora, para poder asociarme al sistema. y quiero saber todo sobre este sistema si es posible estoy haciendo estas instalciones. pero si alguien me podria explicar que es el comando ” sudo ” que se le antepone algunas palabras para que sirve por que se pone y todo lo que es posible. espero me puedan responder. les dejo mis msn.. por cualquier cosa.. gracias por la atencion..

    skifree@live.com.mx

    saludos….!!!

  35. Froylan Says:

    Mas completo no hay..

    salu2!!!


Leave a Reply