Web server LAMP su Raspberry in pochi passi

Web server LAMP su Raspberry in pochi passi

LAMP web server

L’utilizzo di un Raspberry come web server è ormai funzionalità collaudata, stabile e veloce. Tuttavia occorrono alcuni passi per eseguire la configurazione iniziale poiché la distribuzione Linux di default (Raspbian) non ha integrata tale funzionalità.

Oggi ci occuperemo di installare un web server LAMP (Linux Apache MySql PHP) + alcuni software utili (Samba e Git) da riga di comando, accedendo da terminale in SSH al nostro Raspberry precedentemente configurato in rete.

Oltre ai pacchetti di default di Raspbian, andremo ad installare:

  • apache2 (web server)
  • mysql-server, default-libmysqlclient-dev (database e strumenti di sviluppo)
  • php , php-xml , php-curlphp-mysql,  libapache2modphp (linguaggio di programmazione PHP)
  • samba , samba-common-bin (accesso via condivisione SMB)
  • git (version control)

Una prima e buona operazione iniziale è quella di riconfigurare ora/data e timezone del Raspberry:

Successivamente, procediamo con l’upgrade e con l’installazione di tutti i pacchetti necessari (il flag “-y” conferma automaticamente l’installazione):

Sistemiamo i permessi:

Avviamo il server Apache (o riavviamo il Raspberry):

Apache è pronto e funzionante! Provate a digitare l’indirizzo IP del Raspberry nel browser e apparirà la schermata di benvenuto di Apache2. Funziona? Bene!

web server Apache2

Procediamo ora a garantire accesso al database MySql ai computer nella stessa LAN.

Nota: l’operazione non è obbligatoria, ma necessaria in caso volessimo usare il database sul Raspberry da altri computer in rete, ad esempio da un pc locale o attraverso altri gestori database o da script personalizzato. Se vogliamo che sia solo il Raspberry ad accedere al db, saltate i prossimi step.

Editiamo il file 50-server.cnf:

E commentiamo la riga “bind-address” aggiungendo il cancelletto “#” in testa:

Usciamo dall’editor (CTRL+X) e salviamo.
Riavviamo il servizio MySql:

Con questo comando accediamo alla console in riga di comando di MySql come root:

Inseriamo ora queste 2 query, ricordandoci il punto e virgola al termine (inserite la vostra password dell’utente “pi”, non “root”):

Ora qualsiasi host in rete locale può collegarsi a MySql su Raspberry con le credenziali dell’account “pi”.

Passiamo ora a SambaLa directory di default del webserver, dove posizionare i progetti web, è /var/www/html ma non ci risulta ancora accessibile dalla rete.
Procediamo quindi a configurare la condivisione Samba (SMB) su questa cartella, editando il file /etc/samba/smb.conf.

E aggiungiamo le seguenti righe in coda al file, inserendo tra parentesi quadre il nome della cartella che diventerà visibile in rete (modificatelo a piacimento):

Usciamo dall’editor (CTRL+X) e salviamo.
Successivamente, impostiamo una password SMB dell’account “pi”:

Attenzione: la password SMB dell’utente “pi” può essere diversa dalla password di sistema (per accedere via SSH ad esempio), non confondetele!

Infine, riavviamo il demone SMB per ottenere la nuova configurazione.

Fatto! Ora siete pronti per copiare i vostri progetti nella share “html” e puntare direttamente via browser a http://IP_Raspberry/progetto1

Alla prossima!