Configurar Raspberry Pi como servidor web.
Como dije en el tutorial sobre cómo intercambiar archivos con Raspberry Pi mediante SSH desde terminal, ando montando un servidor web en la Raspberry para hacer unas pruebas.
Así que, aprovechando la ocasión, he decidido hacer este tutorial sobre cómo configurar Raspberry Pi como servidor web, apoyándome en este enlace, aunque con algunas mejoras que he sacado de los comentarios del mismo enlace.
Yo en mi caso lo voy a hacer a través de SSH desde mi propio ordenador, aunque también puedes hacerlo conectando una pantalla y un teclado a tu Raspberry y abriendo un terminal. Si quieres hacerlo a través de SSH y no sabes cómo, puedes ver este otro tutorial en el que te explico como configurar la conexión SSH en tu Raspberry.
Índice de contenidos
Instalar Apache y PHP en Raspbian.
Lo primero que debemos hacer es crear y dar permisos al grupo que usa por defecto apache. Cuando ejecuté el comando, el sistema me dijo que el grupo ya tenía los permisos, pero por si acaso, no está de más intentarlo. Para ello, ejecutamos los siguientes dos comandos:
sudo addgroup www-data
sudo usermod -a -G www-data www-data
Ahora actualizamos los repositorios.
sudo apt-get update
E instalamos Apache y PHP.
sudo apt-get install apache2 php5 libapache2-mod-php5
Y, cuando la instalación termine, reiniciamos Apache con el siguiente comando.
sudo /etc/init.d/apache2 restart
Instalar y configurar MySQL y PHPMyAdmin en Raspbian.
Lo primero que nos recomiendan en el enlace de Geeky Theory es activar nuestra interfaz de loopback. Una vez más, al ejecutar el siguiente comando mi sistema me dijo que la interfaz ya estaba activa, pero como antes, no está de más por si acaso.
sudo ifup lo
Y procedemos a instalar MySQL y PHPMyAdmin.
sudo apt-get install mysql-server mysql-client php5-mysql phpmyadmin
Durante la instalación nos saldrán algunas pantallas pidiéndonos las contraseñas de administración de MySQL y PHPMyAdmin, si queremos ponerle alguna, y preguntándonos cómo configurarlo todo. En mi caso he puesto contraseña siempre que me lo han pedido, obviamente, y he marcado «Sí» en la parte de configuración. También nos preguntará qué servidor queremos ejecutar, y he elegido «Apache».
Una vez la instalación termine, debemos modificar el archivo «php.ini». Para ello, ejecutamos el siguiente comando.
sudo nano /etc/php5/apache2/php.ini
En el fichero que se nos abre, bajamos muy abajo (usando CTRL derecho + V iréis más rápido que si usáis las teclas de dirección) hasta que veamos una línea en la que pone «Dynamics Extensions». Cuando encontremos esa línea, añadimos justo antes la siguiente línea.
extension=mysql.so
Tras esto, escribimos el siguiente comando:
sudo ln -s /etc/phpmyadmin/apache.conf /etc/apache2/conf.d/phpmyadmin.conf
Sin embargo a mí, al ejecutarlo, me da el siguiente error.
ln: fallo al crear el enlace simbólico <</etc/apache2/conf.d/phpmyadmin.conf>>: No existe el fichero o el directorio
Según algunos comentarios en el enlace de Geeky Theory, este error se debe a que no hemos creado el directorio «conf.d» en «/etc/apache2». Eso se puede arreglar ejecutando el siguiente comando.
cd /etc/apache2 mkdir conf.d
Sin embargo, a mí me ha funcionado todo bien de momento sin hacer nada de esto.
A continuación ejecutamos el siguiente comando.
sudo /etc/init.d/apache2 reload
Y añadimos al final del archivo «/etc/apache2/apache2.conf» la instrucción «include /etc/phpmyadmin/apache.conf». Para ello, ejecutamos el siguiente comando.
sudo nano /etc/apache2/apache2.conf
Y bajando en el fichero que se nos abre hasta el final (usando otra vez CTRL derecho + V) y añadimos la línea mencionada anteriormente. Una vez lo hagamos y guardemos las modificaciones del fichero, reiniciamos Apache.
/etc/init.d/apache2 restart
Probando el servidor.
Ya tenemos nuestro servidor montado. Si queremos probar que todo ha ido bien, podemos escribir en nuestro explorador de Internet la siguiente dirección.
[direccionIPdelaRaspberry]/phpmyadmin
Donde [direccionIPdelaRaspberry] es la dirección IP de la Raspberry. Por ejemplo:
192.168.1.27/phpmyadmin
Y veremos una página como esta:
Y tras escribir el usuario de administración (que suele ser root) y la contraseña que introdujimos durante la instalación, veremos algo así.
Si no logras ver esto, algo ha ido mal. Deja un comentario abajo y seguramente alguien, sino yo, te echará un cable.
Si quieres hacer otra prueba más de que todo ha ido bien, puedes crear un archivo PHP de prueba en el directorio «/var/www/html» y acceder a él. Para ello, ejecutamos el siguiente comando.
sudo nano /var/www/html/holaMundo.php
Y en el fichero en blanco que se te abre escribes lo siguiente.
<?php echo "Hola Mundo"; ?>
Y, tras guardar el fichero con el nombre «holaMundo.php», escribes en tu explorador web lo siguiente.
[direccionIPdelaRaspberry]/holaMundo.php
Donde [direccionIPdelaRaspberry] vuelve a ser la dirección IP de la Raspberry. Al hacerlo verás algo así.
¡Y enhorabuena! Acabas de hacer tu primer «Hola Mundo» en tu nuevo servidor web de tu Raspberry.
¡Y nada más! Así de simple. Como siempre, cualquier sugerencia o consulta podéis hacérmela llegar enviando un correo electrónico a sugerencias@manusoft.es o dejando un comentario en la entrada. ¡Muchas gracias por visitar ManuSoft.es!