Creare un Web Server con Raspberry Pi
Questo piccolo PC negli anni è diventato sempre più diffuso e ha suscitato parecchio interesse da molti utenti del web.
Il Raspberry Pi nasce da un’idea di Raspberry Foundation con l’obiettivo di migliorare lo studio dell’informatica nelle scuole.
Se volete approfondire meglio i benefici del Raspberry Pi vi rimando a Casa Geek (noto sito di innovazione tecnologica): https://www.casageek.it/categorie/domotica/raspberry/
Iniziamo con la guida!
Perché creare un Web Server con Raspberry Pi
È facile, consuma poco ed è anche divertente avere un Web Server domestico, non credete? Infatti il Raspberry Pi con il sistema operativo Raspbian basato su Linux, ci permette con pochi click di creare un server Apache con PHP e MySQL pronto per i piccoli o grandi progetti!
Ovviamente non si potranno collegare troppe persone contemporaneamente a causa del ridotto hardware del Raspberry Pi.
Aggiornamento del sistema
Prima di procedere bisogna assicurarsi che il sistema sia completamente aggiornato. Utilizziamo i seguenti comandi:
sudo apt-get update
sudo apt-get upgrade
Installazione Apache e PHP
Apache è il componente principale dell’operazione, il sistema che crea l’ambiente a cui i tuoi utenti, o tu stesso, accederanno.
PHP è Il linguaggio di programmazione per eccellenza, che ormai anche i più neofiti conoscono.
Con questi comandi installeremo Apache e PHP in un colpo solo!
sudo apt-get install apache2 php5 libapache2-mod-php5
Dopo che l’installazione è conclusa dobbiamo riavviare Apache per rendere effettiva l’installazione del componente PHP.
sudo service apache2 restart
Partendo dal presupposto che il Raspberry Pi e il vostro computer siano connessi alla stessa rete, digitiamo sulla linea di comando questo comando per capire quale sia l’IP locale del Raspberry.
ifconfig
In corrispondenza della voce “inet addr” troveremo un indirizzo simile a questo: 192.168.xxx.xxx. Il mio è 192.168.1.14.
Ora aprendo il browser del vostro computer e digitando nella barra degli indirizzi l’ip vedremo la schermata predefinita di Apache.
La cartella che conterrà tutto ciò che volete visualizzare nel web server è /var/www/html/.
Installazione MySQL
Un web server che si rispetti ha anche un database MySQL su cui immagazzinare le informazioni inserite nei nostri progetti.
Possiamo installarlo con i seguenti comandi:
sudo apt-get install mysql-server
sudo apt-get install php5-mysql
Il primo installa il server MySQL, il secondo installa l’estenzione che ci permette di connetterci al database MySQL attraverso PHP.
L’utente predefinito del server MySQL è root mentre la password non c’è, quindi qualora vi si dovesse richiedere la password di MySQL non inserite nulla.
phpMyAdmin
Per amministrare con facilità MySQL possiamo utilizzare phpMyAdmin, che attraverso il webserver stesso possiamo accedere a una pagina per creare tabelle, database e inserire dati in modo semplice.
Quindi andiamo nella cartella principale del nostro web server (/var/www/html/) e scarichiamo e estraiamo all’interno l’ultimo pacchetto di phpMyAdmin:
wget https://files.phpmyadmin.net/phpMyAdmin/4.9.0.1/phpMyAdmin-4.9.0.1-all-languages.zip
unzip phpMyAdmin-4.9.0.1-all-languages.zip
Ora accedendo alla pagina http://192.168.1.14/phpMyAdmin-4.9.0.1-all-languages/ ci troveremo sulla pagina di accesso al server MySQL. Inseriamo l’utente root e lasciamo vuoto il campo password e… divertitevi!
Accesso dall’esterno
In questo momento il vostro web server è accessibile solo dai dispositivi collegati alla stessa rete del Raspberry Pi. Per far sì che i vostri amici e conoscenti possano accedervi bisogna innanzitutto conoscere l’indirizzo IP esterno della nostra connessione, attraverso questo sito web.
Una volta conosciuto il nostro indirizzo IP esterno, dobbiamo configurare il nostro router per permettere le connessioni esterne sulla porta 80.
Quindi accediamo al nostro router utilizzando l’indirizzo IP interno (in genere 192.168.1.1 o 192.168.1.254) e inseriamo l’eventuale password amministratore che ci viene richiesta. In genere è admin ma potrebbe variare in funzione del modello del vostro router. Potete scoprirla con una ricerca su Google.
Una volta entrati nella pagina di configurazione del router dobbiamo cercare la sezione Port Forwarding e aggiungere una nuova regola associata all’indirizzo IP locale del Raspberry Pi (nel mio caso 192.168.1.14). La porta da aprire è la 80, TCP/UDP.
Una volta aggiunta la regola potete mandare il vostro indirizzo IP esterno a qualche vostro amico per testarne il funzionamento. Se riscontrate qualche problema non esitate a commentare!