Montar LAMP (Linux + Apache + MySQL + PHP) en Ubuntu

Os dejo con una guía impecable que me he encontrado en DotPress.

Instalando Apache:

sudo apt-get install apache2

Nos pedirá nuestra contraseña para autenticar. Por cierto, las instrucciones están para Ubuntu y sistemas basados en Debian. En otras distribuciones, el método es distinto. Luego vamos al explorador en http://localhost/

Instalando PHP:

La ventaja principal de los repositorios es que las aplicaciones ya están pre-compiladas, con lo cual nos ahorramos mucho tiempo y evitamos tener que conseguir todas las dependencias. Eso me pone a pensar que para desarrollar en Linux e instalar nuevas herramientas, es necesario contar con una conexión a Internet. Bien, ahora que tenemos Apache ya instalado, procedemos con PHP.

# Instalamos PHP 5
sudo apt-get install php5

# Instalamos el conector de PHP para Apache 2
sudo apt-get install libapache2-mod-php5

# Reiniciamos el Servidor
sudo /etc/init.d/apache2 restart

Con esto ya tenemos vinculado Apache con PHP. Nuestra carpeta DocumentRoot es /var/www/. Para probar creamos un archivo de prueba e incluimos la función <?php phpinfo(); ?>. Ahora, si el servidor nos mostrase el cuadro de dialogo Guardar Archivo, procedemos a forzar el reinicio de Apache.

sudo a2enmod php5
sudo /etc/init.d/apache2 force-reload sudo /etc/init.d/apache2 restart

 

# Instalamos módulos adicionales

# PEAR
sudo apt-get install php-pear

# GD
sudo apt-get install php5-gd

# XSL
sudo apt-get install php5-xsl

# CURL

sudo apt-get install curl libcurl3 libcurl3-dev php5-curl

# PostFix: soporte para la función mail()
sudo apt-get install postfix

# Reiniciamos el Servidor
sudo /etc/init.d/apache2 restart

Instalando MySQL:

La instalación de MySQL también viene a ser muy sencilla. La variante con respecto a la instalación en Windows es que en Linux, debemos instalar el soporte dentro de Apache y dentro de PHP.

# Para Apache (requerido para instalar en PHP)
sudo apt-get install libapache2-mod-auth-mysql

# Podemos definir la version 4 o 5 de PHP
sudo apt-get install php<version-number>-mysql
sudo apt-get install phpmyadmin

Ahora, editamos el archivo de configuración de PHP ubicado en /etc/php<version>/apache2/php.ini y agregamos:

extension=mysql.so

Cuando instalemos nuevas extensiones, podemos agregarlas al PHP.ini sin necesidad de recompilar.

Ahora, volvemos a reiniciar el Servidor de Apache. Y terminamos por instalar el Servidor de MySQL.

# Instalamos el servidor de MySQL
sudo apt-get install mysql-server

Para que Apache no fastidie con mensajes extraños cada vez que se reinicia, editamos el archivo /etc/apache2/httpd.conf y añadimos la siguiente línea al final:

ServerName 127.0.0.1

Gracias a piponazo por el comentario.

Y con esto ya tenemos instalado Apache, PHP y MySQL en Linux Ubuntu. Podemos reiniciar nuestro computador y cada vez que iniciemos, los servicios de Apache y MySQL se iniciarán automáticamente.

A 2 personas les gusta esta entrada

39 pensamientos en “Montar LAMP (Linux + Apache + MySQL + PHP) en Ubuntu

  1. He seguido los pasos al pie de la letra y me ha faltado hacer un nuevo reinicio del apache después de reiniciarlo con la opción force-reload.

  2. además si pones en /etc/apache2/httpd.conf la siguiente línea:
    ServerName 127.0.0.1
    No tienes que ver los mensajes de advertencia que se muestran cada vez que inicia el apache

  3. Hola!, primeramente felicitar por este fabuloso manual de instalación de LAMP, he tenido un problema y es el siguiente (soy nobb en esto), he seguido al pie de la letra los pasos pero me surigió un problema al final…instalación del servidor mysql, me arroja este fallo:
    /usr/sbin/mysqld: error while loading shared libraries: /lib/tls/i686/cmov/libc.so.6: cannot apply additional memory protection after relocation: Permission denied (repetidas veces) y luego dice invoke-rc.d: initscript mysql, action «start» failed.
    dpkg: error al procesar mysql-server-5.0 (–configure):
    el subproceso post-installation script devolvió el código de salida de error 1
    dpkg: problemas de dependencias impiden la configuración de mysql-server:
    mysql-server depende de mysql-server-5.0; sin embargo:
    El paquete `mysql-server-5.0′ no está configurado todavía.
    dpkg: error al procesar mysql-server (–configure):
    problemas de dependencias – se deja sin configurar
    , espero que me ayuden, siento mi ignorancia pero llevo 3 días en linux,XD.

    Gracias de antemano. Un saludo

  4. O.o neonigma dios@ de la sabiduría,XD, se solucionó, introducí el comando y luego hice sudo apt-get install mysql-server y todo perfect, muchas gracias!, te has ganado un seguidor de tu blog! lo recomendaré, sigue así y suerteeee, dewww

  5. Jejeje me alegro q se te solucionara el problemilla Gnomo, has entrado en un mundo en el que todo se comparte y todos nos ayudamos a aprender más y más cada día, así que bienvenido y a seguir adelante!

    Saludos!

  6. Hola buenas!!!!, escribo porque tengo un problema existencial y llevo tres días googleando y nada, haber si me pueden hechar una mano…tengo instalado ubuntu en un pendrive junto con php5, Apache2 y Mysql, seguramente mi problema sea de configuración de apache pero es que soy muy nobb,XD, el caso es que no puedo cargar imagenes (jpg, bmp,png) en documentos php ni en html en mi servidor local, en firefox aparecen como rectangulos vacíos ( lo ago con code html <img src=»1.jpg» width=»700″ height=»106″), en cambio si por ejemplo creo un documento html en el escritorio y lo cargo con firefox, bualá, aparece…También puse los permisos 777 a todos los ficheros de www pero nada, si pueden ayudarme estaría muy agredecido.
    Nota: siento si el post no debería ir en esta sección.

    Un saludo Gnomo

  7. Gnomo, las páginas webs no se suelen poner en el escritorio, se ponen en el directorio /var/www, de forma que enlace con el localhost montado por Apache.
    Es decir, si colocas una página web llamada mipagina.html en /var/www, podrás acceder a ella escribiendo http://localhost/mipagina.html en el navegador. Las imágenes también irían dentro de este directorio.
    Prúebalo y nos cuentas. La etiqueta img src.. debería funcionar en ese momento, si no funciona prueba a modificar la ruta del fichero 1.jpg, haciendo esta ruta absoluta o relativa según convenga a tus pruebas.

    Saludos.

  8. Hola Neonigma, gracias por contestar, pero creo que por ahí no va el asunto, creo que no me expresé bien,XD, cuando decía que no puedo cargar las imagenes en mi servidor local me referia al espacio que maneja apache, que es en /var/www, ahí es donde no he podido cargar imagenes(pero si he verificado que la red local funciona y que carga el código php) accediendo con la ruta http://localhost/mipagina.html (como bien tu explicas), y sigo sin resolverlo, como te decía cambie todos los permisos de /var/www a 777, he probado comentar y descomentar todas las directivas de apache2.conf y php.ini,he puesto las imágenes en distintos directorios al de el documento php…. pero nada…Así que me bajé el paquete de Xampp y sí puedo cargar las imágenes sin ningún problema en la red local.
    Espero haberme expresado bien. 🙂

    Un saludo

  9. Ok Gnomo, estupendo! Enhorabuena por tus progresos y gracias por el aporte, es importante que sigáis aportando cosas a este mundillo.

    Un saludo!

  10. Hola. Gracias por la informacion, la verdad es que esta muy buena, solo agregar que en algunos casos
    /etc/apache2/httpd.conf
    puede estar vacio, si es asi es porque apache no utiliza ese como archivo de configuracion si no este
    /etc/apache2/apache2.conf
    ahi habria que agregar la linea
    ServerName localhost
    o como mencionaste tu que es lo mismo
    ServerName 127.0.0.1

    Nada Mas … Gracias

  11. Hola! instale todo desde el tutorial q por cierto esta muy claro y sencillo xD y cuando trato de ejecutar un php ( en mi caso para instalar moodle en localhost firefox me lanza la ventana de descarga de archivo…. no se que hacer para que me la ejecute
    Gracias!!!

  12. Reptilia,
    ¿dónde has instalado Moodle? Recuerda que para que se vean las páginas tienen que estar dentro de /var/www. Si tienes una carpeta moodle con los archivos en /var/www/moodle/ y por ejemplo la página principal está en /var/www/moodle/index.php, accederás a la página escribiendo http://localhost/moodle/index.php en el navegador.

    Saludos y ya me cuentas.

  13. Hola tengo una pregunta, por que cuando en una terminal le pongo mysql me aparece:
    Can»™t connect to local MySQL server through socket «˜/var/run/mysqld/mysqld.sock»™ (2)
    llevo mucho tiempo buscando la solución, espero por favor me pueda ayudar.
    Gracias

  14. Otro novato con duda, intale todo perfecto. Funciona genial. Como accedo a phpmyadmin? para crear bases de datos… desde ya muchas gracias y segui asi que Insentivas muchisimo el uso de linux 🙂

  15. Brunito, para acceder a phpmyadmin, antes has de instalarlo con el comando «sudo apt-get install phpmyadmin» y luego acceder a él desde el navegador introduciendo la URL «http://localhost/phpmyadmin».

    Un saludo.

  16. Una duda…la instalación sería de esta manera en todas las distribuciones basadas en debian?
    Gracias de antemano y disculpen la ignirancia.

    Un saludo

  17. inad, yo pienso q si no idéntica, la mayoría de pasos coincidirán, por no decir todos. Es posible que fallen algunos detalles, pero lo veo poco probable, a no ser q las versiones de los paquetes sean diferentes.

    Un saludo.

  18. hola soy nuevo en esto de programar en php tengo un problema es cuando intento ver mis archicos o cualquier archivo con extencion php el nevegador siempre me da la opcion de guardar el archivo, si me puede ayudar a solucionar mi duda te lo agradeseria mucho

  19. Saludos y gracias por la informacion, la duda que tengo y no se por donde empezar es, para poder accesar desde le exterior, mi caso es un poco creo complicado, debido a que me conecto a internet mediante wireless, uso ndoswrapper y wifi radar, la señal la recibo de un pariente y es un moden de esos de telmex, ¿como debo de hacerle entonces? por cierto ya tengo cuenta en dyndns, y datos que arroja la wlan0 cuando le hago el scan, saludos y muchas gracias.

  20. Buenos dias tengo instalado el apache en debian y quiero correr una pagina que tiene un codigo en php pero al abrir la pagina con el explorador en vez de ejecutar el codigo lo que hace es descargarla como si fuera un archivo… que podra ser esto?

  21. hice todo como lo descrito, por cierto muy bueno,
    en un sobremesa me funciona, en el portatil NO.
    me sale:
    -laptop:~$ sudo /etc/init.d/apache2 restart
    * Restarting web server apache2 (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]
    —-
    que hago me hace falta el portatil

  22. Gracias!!!
    hace tiempo que queria instalar apache,php y mysql sin usar lampp y siempre tenia problemas, con este tuto todo arranco bien.
    Mi unico problema es que en ningun momento seleccione usuario o pass para phpmydmin y ahora cuando lo inicio con localhost/phpmyadmin me los solicita y no se que poner. Como es el tema? gracias

  23. bueno solo como comentario estos pasos
    para quienes quieran algo mas sencillo
    abrimos el gestor de paquetes sinaptyc y en la pestaña de editar seleccionamos la opcion marcar paquetes por tarea, y seleccionamos en la venntana que nos aparezca la opcion LAMP, cerramos esa ventana o dialogo y pulsamos en boton aplicar
    todo se descargara y se instalara, durante la instalacion solo hay que dar la contraseña de root para mysql
    al terminar la instalacion abrimos nuestro browser y ponermos localhost o 127.0.0.1 y veremos el archivo de apache desplegando It wors !! podremos abrir php (con php myadmin), y mysql tambien con la terminal o con el query browser
    Lo prove en ubuntu 9.04

  24. Buenas noches …
    mi problema es el siguiente tengo instalado en mi pc un s.o ubuntu, tengo el apache, mysql , phpmyadmin …
    bueno …
    tengo mi index.html el cual conecta a una bd y todo anda muy bien en local … ejemplo: localhost/ …
    y abre mi index.html y todo bien … luego creé un nombre de dominio con el servicio de dyndns para poder abrir la pagina desde el internet …
    osea, desde una pc remota cualquiera… y no abre dice enlace roto…
    tengo ya varios dias googleando pero nada !!! y quiero probar la pagina fuera del local… desde ya gracias !

  25. hola se que ya tienen mucho que no contestan pero espero encontrar una solucion

    soy novato en linux

    bueno el problema que tengo es el siguiente, cuando trato de entrar al http://localhost/phpmyadmi
    me aparece el siguiente mensaje.

    Not Found

    The requested URL /phpmyadmi was not found on this server.
    Apache/2.2.9 (Debian) PHP/5.2.6-1+lenny8 with Suhosin-Patch Server at localhost Port 80

    y no encuentro cual es el error si instale todo correcto y ademas como puedo crear una base de datos
    o donde entro para podre crear mi base de datos.

    de ante mano muchas gracias

  26. ¿no puedo guardar archivos de texto, ni descargar archivos de internet? ¿Como lo soluciono?

  27. explica mas antonio, para poder ayudarte, para poder guardar archivos, usa nano el nombre del archivo.

    a esto te refieres o aque y para descargar los archivos de internete meciona que version de so tienes.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *