Il server LAMP
LAMP è una piattarforma software per lo sviluppo Web composta da vari componenti ed è l'acronimo di Linux Apache MySql Php (Perl o Python)
Apache o meglio Apache Http Server, rappresenta un Server Web. E' una delle piattaforme Server più diffuse ed apprezzate attualmente in circolazione e relativamente facile da configurare. Inoltre è dotata di una vasta documentazione utilissima per la risoluzione delle problematiche più comuni. Nel caso di un Server Lamp è proprio Apache che si occupa di gestire le varie richieste dei client fornendo le informazioni richieste, come ad esempio una pagina web.
MySql è un Database relazionale detto RDBMS (Relational database management system) per la raccolta e consultazione dei dati. Possiede delle interfacce per diversi linguaggi, compreso un driver ODBC, driver Java, un driver per Mono e DOT NET ed una libreria per Python.
PHP è un linguaggio di programmazione interpretato. E' utilizzato principalmente per sviluppare applicazioni Web lato Server, ma può essere usato anche per scrivere script a riga di comando o applicazioni standalone con interfaccia grafica.
Perl è un linguaggio di programmazione ad alto livello, procedurale e interpretato: ha un singolare insieme di funzionalità ereditate dal C, scripting shell Unix, Awk e da molti altri linguaggi di programmazione.
Python è un linguaggio di programmazione ad alto livello, orientato agli oggetti, adatto tra gli altri usi, per sviluppare applicazioni distribuite, scripting, computazione numerica e system testing.
La realizzazione di un Server Web con LAMP può essere fatta installando i singoli componenti su un aualunque distribuzione Linux, in questo caso volendolo realizzare sulla Raspberry, partiamo da “Raspbian Buster with desktop and recommended software” che potete scaricare dal sito di riferimento:
downloads.raspberrypi.org
Per l’installazione da zero seguite la guida che trovate alla pagina:
www.raspberrypi.org/documentation/installation/installing-images/README.md
INSTALLAZIONE DEI COMPONENTI:
Installiamo la piattaforma LAMP (Linux Apache MySql PHP) al fine dia vere a disposizione un server web, un Database e PHP per poterlo utilizzare da terminal, o via SSH,
digitiamo:
sudo apt-get update
Sempre meglio partire da una distribution aggiornata…
Per installare MySQL (al termine troveremo MariaDB che è un derivato, un fork, del modello di database MySQL) digitiamo:
sudo apt install mysql-server
Una volta installato, è necessario impostare la password di root (admin), se durante l'installazione non viene richiesto di crearlo sarà necessario digitare:
sudo mysql_secure_installation

Rispondere “y” per impostare la password con una propria che vi annoterete in un posto sicuro… Ci servirà poi per il collettamento delle temperature.
Creato il database, si procede con l’installazione del server Apache e del modulo PHP:
sudo apt install apache2 php libapache2-mod-php php-mysql -y
Al termine si deve riavviare il server Apache col comando:
sudo /etc/init.d/apache2 restart
Per verificare che il server Apache funzioni basta aprire il proprio browser Internet e digitare l’indirizzo della Raspberry: http://my_raspberry_IP
L’indirizzo che avete digitato, per il momento non è altro che l’indirizzo IP assegnato alla vostra Raspberry.
Verrete reindirizzati alla home page di default del server web apache.
Ora elimineremo questa home page, ed in seguito creeremo la nostra cartella che conterrà il sito personalizzato:
cd /var/www/html/
e quindi:
sudo rm index.html
L’utente pi deve avere i diritti di amministratore sulla cartella che conterrà il sito web, per fare questo digitiamo:
sudo chown -R www-data:pi /var/www/html/
e poi
sudo chmod -R 770 /var/www/html/
Adesso torniamo alla cartella /home/pi digitando:
cd /home/pi
non ci resta che installare phpmyadmin per la gestione dei database con l’interfaccia grafica, digitiamo:
sudo apt install phpmyadmin -y
Nel corso dell’installazione, con la barra spaziatrice si dovrà scegliere apache2 e quindi premere ENTER per confermare, vi verrà chiesto di impostare la password che PhpMyAdmin userà per collegarsi a MySQL, meglio se la scegliete diversa da quella di ROOT, segnatevi ovviamente anche questa…
L’ultima videata alla quale risponderete YES è questa:

A questo punto si potrà accedere alla pagina principale di phpMyAdmin digitando //locahost/phpmyadmin e comparirà questa pagina:

L’accesso via web con l’utente Root non è permesso, ma vedremo poi come fare con il nostro utente personale. Eseguito l’accesso ci troveremo in una pagina come la seguente:

A questo punto il server è pronto.
Sotto var/www potete mettere le pagine del vostro sito, verrà automaticamente indirizzata la pagina index.html. Vi potete sbizzarrire.
Io, per esempio ho scelto un template gratuito che si chiama Simple-master scaricato da http://www.prowebdesign.ro che ho completamente personalizzato.