viernes, 7 de junio de 2019

Raspberry Pi instalación de Apache + PHP + MySQL

Este artículo forma parte de una serie que nos conducirá a configurar una Raspberry Pi hasta llegar a tener instalada en ella un servidor web con base de datos y PHP como lenguaje. Los artículos de la serie son los siguientes.
  1. Raspberry Pi instalación y puesta en marcha
  2. Raspberry Pi primeros pasos
  3. Raspberry Pi instalación de Apache + PHP + MySQL   ← (es el post en el que estamos)
  4. Raspberry Pi instalación de Wordpress
Trabajaremos desde la consola utilizando la línea de comandos ya que la instalación que hemos realizado no ha cargado las xWindows. No disponemos de interface gráfica y por lo tanto el ratón no lo utilizaremos.


Vamos a instalar LAMP que son las siglas de:
  • Linux   ← es la propia Raspberry Pi con Raspbian
  • Apache   ← es el servidor de páginas web
  • MySQP   ← es la base de datos
  • PHP   ← es el lenguaje de programación web desde el lado del servidor

Apache

Instalar Apache:

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install apache2 -y


El modificador -y sirve para evitar estar pulsando Yes en todas las preguntas que nos hagan.

Ir a http://localhost (127.0.0.1) para ver que se ha instalado bien.

Si estamos en una Raspberry Pi que no tiene sistema de ventanas  (no tiene xWindows) y únicamente disponemos de lína de comandos, lo que podemos hacer para ver la web generada y que el servidor Apache funciona bien es ir a otro PC de nuestra red interna y teclear en el navegador la URL interna de nuestra Rasberry Pi. En mi caso teclrearé http://192.168.1.11

Obtendré la siguiente pantalla.


Esta es la prueba de que está funcionando nuestro servidor Apache.

Nota
Si no recuerda la IP de su servidor puede teclear:

hostname -I


Cambiar la página inicial

La página que se sirve inicialmente se llama index.html y se encuentra en el directorio
/var/www/html.

Primero vamos hasta ese directorio.

cd /var/www/html

Alli deberíamos ver el archivo index.html

ls -l



Si no te deja editar el archivo es debido a que no tenemos los permisos necesarios.

Para cambiar los permisos escribimos:

sudo chown -R pi: index.html

Ahora ya podremos editar el archivo, por ejemplo con el editor básico nano.

El inconveniente es que de esta forma el usuario pi únicamente tiene permisos para editar el archivo index.html, pero no podrá escribir sobre ningún otro en ese directorio. Por lo tanto, lo que proponemos es cambiar los permisos para el usuario pi en ese directorio, ejecutando las dos líneas siguientes.

sudo chown -R pi:www-data /var/www
sudo chmod u+rxw,g+rx-w,o-rwx /var/www


Gracias a que ahora el usuario pi ya tiene permisos de escritura en ese directorio podemos optar por otra opción que consiste en renombrar el archivo index.html como index_old.html y crear nuestro propio archivo index.html.

Vamos a renombrar el archivo.

mv index.html index_old.html

Ahora vamos a crear nustro archivo index.html a nuestro gusto.

nano index.html

Estando en el editor escribiremos el siguiente código para un archivo HTML básico que nos mostrará el texto Hola mundo.

 <!DOCTYPE html>  
 <html>  
  <head>  
   <meta charset="utf-8">  
   <title>Página inicial</title>  
  </head>  
  <body>  
   Hola mundo  
  </body>  
 </html>  


Veamos si ha funcionado solicitando nustra página web personalizada. Para ello escribimos en nuestro navegador la dirección IP fija de nuestra Raspberry Pi. En nuestro caso es 192.168.1.11


Instalar PHP

Para instalar PHP escribirmos la siguiente línea en la terminal.

sudo apt-get install php libapache2-mod-php -y

Comprobemos la versión instalada de PHP con el siguiente comando.

php -v

Vamos a renombrar el archivo index.html con la nueva extensión php.

mv index.html index.php

Vamos a editar el nuevo fichero para incluir una línea con código PHP para ver si está funcionando bien.

nano index.php


Ahora el fichero incluirá un script en PHP.

 <!DOCTYPE html>  
 <html>  
  <head>  
   <meta charset="utf-8">  
   <title>Página inicial</title>  
  </head>  
  <body>  
   Hola mundo.<br>  
   <?php  
    echo "Hello world!";  
   ?>  
  </body>  
 </html>  

Para ver el resultado actualicemos en nuestro navegador la página 192.168.1.11


Instalar MySQL

Para instalar la base de datos MySQL tecleamos.

sudo apt-get install mysql-server php-mysql -y
sudo mysql_secure_installation
sudo service apache2 restart


De las anteriores, la segunda línea generará una serie de preguntas para configurar la base de datos MariaDB.








Instalar phpMyAdmin

Tecleamos.

sudo apt install phpmyadmin

Seleccione apache2 como servidor. Para ello seleccione pulsando ESPACIO, muevase con TAB y finalmente valide con ENTER.



Luego ejecute la siguiente línea.

sudo systemctl restart apache2.service

En respuesta a la siguiente pregunta responderemos Aceptar pulsando ESPACIO (la barra espaciadora).


Configurar phpMyAdmin

Editamos el fichero de configuración, para lo cual tecleamos:

sudo nano /etc/apache2/apache2.conf

Dentro del archivo que estamos editando incluir al final la siguiente línea.

 Include /etc/phpmyadmin/apache.conf  

Restart Apache tecleando:

sudo /etc/init.d/apache2 restart

Hacer test en el navegador con una de estas dos opciones.

localhost/phpmyadmin

192.168.1.11/phpmyadmin

Yo he tenido que ejecutar esta segunda línea en el navegador ya que estoy en una sesión SSH conectado de forma remota a mi Raspberry Pi y no he podido usar localhost.


  1. Default user: phpmyadmin
  2. Default password: your mysql password



No hay comentarios:

Publicar un comentario