Quest’articolo ha lo scopo di fornire tutte le informazioni necessarie per un installazione completa di un server web si Raspberry pi, vediamo insieme i passi da compiere

Dopo l'installazione di Raspbian che include anche una copia piuttosto recente del firmware Raspberry Pi può capitare che restino comunque fuori aggiornamenti importanti, quindi non fa mai male prima di iniziare aggiornare alla versione più recente l'intero pacchetto Firmware:

sudo rpi-update
sudo reboot

1)      Installare Apache;

2)      Installare PHP7;

3)      Installare MYSQL;

4)     Installare PHPMyAdmin;

Prima di tutto è necessario effettuare il download del sistema operativo dal sito ufficiale

i pacchetti MySQL e PHPMyAdmin potrebbero essere opzionali ammenochè  non si abbi intenzione di utilizzare dei CMS, acronimo di content management system come Joomla o WordPress, i quali richiedono l'utilizzo si un database nel quale stoccare tutti i dati e le informazioni necessarie per il popolamento e la gestione delle pagine web o utilizzare la CLI per la gestione del database anziché un interfaccia grafica magari utilizzando Raspberry Pi per lo sviluppo o l’apprendimento dell’utilizzo delle tali piattaforme.

Prima di iniziare le installazioni dei vari pacchetti è consigliabile effettuare l'aggiornamento del DataBase dei programmi e degli aggiornamenti disponibili con i seguenti comandi:

sudo apt update

sudo apt upgrade

 

 

 

Installare Apache

Un Host necessita di un server web e  Apache  è uno dei web server (open source) più importanti e utilizzato al mondo da innumerevoli web host.

Per installare Apache digitare da terminale il seguente comando :

sudo apt install apache2 -y

Una volta installato apache avviamolo e facciamo in modo che si avvii al boot digitiamo:

sudo systemctl start apache2
sudo systemctl enable apache2

per verificare la corretta installazione puntare dal browser all'indirizzo http://indirizzoipraspberry o se state utilizzando proprio un browser sul Raspberry puntate a http://localhost vi comparirà la classica schermata

 

it works!

 

 

Installare PHP7.x

Un Web server è una macchina capace di interpretare i più importanti e diffusi linguaggi di programmazione utilizzati per la progettazione di pagine web, PHP anch'esso open source è proprio uno di questi è da poco è stata rilasciata ufficialmente la versione 7.3 per Raspberry.

Per installare PHP digitare da terminale i seguenti comandi :

sudo apt install php libapache2-mod-php -y

Dopo aver installato php modifichiamo subito il file php.ini per consentire un utilizzo più fluido, quindi digitiamo

sudo nano /etc/php/7.3/apache2/php.ini

e all'interno del file modifichiamo i seguenti parametri come riportato

memory_limit = 256M

upload_max_filesize = 32M

post_max_size = 32M

date.timezone = europe/rome

 Installare MySQL

 

E' uno dei database open source più diffuso nel mondo Linux ed è l'equivalente di SQL Server nel mondo Microsoft

Per installare MySQL digitare dalla linea di comando la stringa :

sudo apt install mariadb-server -y

Quando si installa MySQL, verrà creato un utente di root senza alcuna password ma che avrà l'accesso solo se connesso da loclhost, successivamente vedremo come aggiungere utenti o modificare i diritti dell'utente root se non intendete installare phpmyadmin , sicuramente al termine dell'installazione impostiamo subito una password per l'utente root digitando

sudo mysqladmin -u root password NEWPASSWORD 

altrimenti vi conviene rimandare l'aggiunta della password al termine dell'installazione di phpmyadmin

A questo punto l'installazione del server, come abbiamo precedentemente detto potrebbe anche terminare qui, hai a disposizione tutte le risorse necessarie.

L'installazione di PHPMyAdmin ti consente però di avere un interfaccia grafica per la gestione del database che altrimenti dovrai gestire dalla CLI. 

Vediamo come installare PHPMyAdmin

Installare PHPMyAdmin

 

Per l'installazione di PHPMyAdmin digitia la seguente stringa dalla CLI

 

sudo apt install phpmyadmin -y

 

Il comando inizierà l'installazione, ti verrà chiesto quale server web è installato, scegli apache2

 

Successivamente ti verra richiesto di configurare il database di PhpMyAdmin e verra visualizzata la schermata che segue

a questo punto riavviamo apache

sudo /etc/init.d/apache2 restart

ed il gioco e fatto!!!

Ora avrete accesso al mysql digitando da un qualsiasi broswer digitando IP_HOST/phpmyadmin ed effettuando il login con

Nome utente : phpmyadmin

password : "la password inserita durante l'istallazione di phpmyadmin"

È bene pero terminare assegnando alle cartelle i giusti diritti quindi

sudo chown -R www-data:www-data /var/www

sudo chmod -R 775 /var/www

ed aggiungere l'utente pi nel gruppo di gestione della cartella

sudo usermod -aG www-data pi


al termine dell'installazione all'accesso in PHPMyAdmin potreste visualizzare dei warning come riportato di seguito

Warning in ./libraries/sql.lib.php#601
count(): Parameter must be an array or an object that implements Countable

Backtrace

./libraries/sql.lib.php#2038: PMA_isRememberSortingOrder(array)
./libraries/sql.lib.php#1984: PMA_executeQueryAndGetQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./sql.php#216: PMA_executeQueryAndSendQueryResponse(
array,
boolean true,
string 'alternativegirls',
string 'tgp_photo',
NULL,
NULL,
NULL,
NULL,
NULL,
NULL,
string '',
string './themes/pmahomme/img/',
NULL,
NULL,
NULL,
string 'SELECT * FROM `tgp_photo`',
NULL,
NULL,
)
./index.php#53: include(./sql.php)

potete risolvere il bug seguendo quanto riportato in questo blog