INTERNET E IL PROTOCOLLO HTTP
Prima di parlare del linguaggio PHP è bene fare alcune premesse sul web. Internet la possiamo considerare come una serie di dispositivi interconnessi tra loro. In genere questi dispositivi nelle rete internet vengono detti host o sistemi periferici. Gli host sono connessi tra loro tramite una serie di collegamenti (wi-fi, fibra) e router. Affinché gli host possano comunicare correttamente, è necessario avere delle regole per lo scambio di dati. Queste regole sono dette protocolli. Quando noi apriamo un browser e digitiamo un indirizzo per visitare un sito web, tecnicamente è avvenuta una comunicazione tra il nostro dispositivo (pc, smartphone, tablet e quanto altro) e il dispositivo che ospita il sito web. In questa tipologia di comunicazione il nostro dispositivo viene chiamato client mentre l’altro server. È il modello client server che ben conosciamo in quanto trattato più volte. Maggiori informazioni sul protocollo http le trovi a questo indirizzo: https://www.marcoalbasini.com/2021/07/livello-applicazione-il-protocollo-http/
EFFETTUARE UNA RICHIESTA
Il protocollo http è implementato sia lato client che lato server, lato client nel browser web, lato server all’interno di un applicativo chiamato web server. Un server è un dispositivo che ospita e fornisce delle risorse all’interno della rete internet, risorse che sono raggiungibili tramite URL (Universal Resource Locator). Supponiamo che il client richieda la documentazione php, tramite protocollo HTTPS che è sostanzialmente http ma con un livello di sicurezza in più, la cifratura dei dati scambiati. Ma come facciamo a sapere l’indirizzo del server che ospita la documentazione PHP? Così come ogni abitazione è dotata di un numero civico, Cap, indirizzo di modo che se vogliamo scrivere una lettera a un nostro amico sappiamo come raggiungerlo, anche i dispositivi connessi a Internet sono dotati di un indirizzo univoco chiamato IP (Internet Protocol) . Quando il client fa la richiesta al server oltre all’informazione sul contenuto cercato invia anche il proprio indirizzo IP. Abbiamo detto che lato server il protocollo http è implementato nel web server; quindi, lo scambio di dati avviene tra il browser e il web server.
LINGUAGGI LATO SERVER E LATO CLIENT. IL DNS
Quando un client tramite browser digita un indirizzo URL, il nome del dominio viene trasformato tramite server DNS nell’indirizzo IP dell’host su cui risiede la risorsa richiesta. I server DNS sono server presenti nella rete il cui compito è quello di associare gli IP con i corrispettivi domini. Quando viene fatta una richiesta, ad esempio, a google.com tale nome mnemonico viene trasformato nell’indirizzo IP del server di Google. La richiesta può essere un file multimediale, ma anche una pagina html o uno script PHP. Il linguaggio PHP è un linguaggio di scripting eseguito sul server (Apache o Nginx).
Esistono due tipologie di linguaggi, quelli compilati e quelli interpretati. Vediamo una figura.
Ma ritorniamo al nostro modello client-server, quando un client effettua una richiesta per uno script PHP, il web server non è in grado di tornare subito la risposta, questo perché come dicevamo il linguaggio PHP o meglio il codice del linguaggio deve essere prima interpretato.
Siccome il browser non è in grado di comprendere il codice PHP, lato web server il codice interpretato viene trasformato in una pagina HTML comprensibile al browser.
PREDISPORRE L’AMBIENTE
Affinché possiamo sviluppare e testare le nostre applicazioni PHP, dobbiamo configurare il dispositivo sia come client che come server. Come client è già in grado di operare in quanto abbiamo il browser web, come server abbiamo bisogno di un web server in grado di prendere in carico e gestire le richieste. I due web server maggiormente usati sono Apache e Nginx, ognuno ha pro e contro. I software da installare lato server, oltre al web server sono, PHP e MySQL. Infatti, i dati delle nostre applicazioni PHP potrebbero essere dinamici, da qui la necessità di memorizzarli in un database MySQL. In questi post utilizzeremo XAMPP come ambiente software, esso ha già in sé tutte le componenti che ci servono, inoltre come ambiente di sviluppo utilizzeremo Visual Studio Code.
INSTALLARE XAMPP SU WINDOWS E V.S CODE
Per quanto riguarda XAMPP l’applicativo è reperibile al seguente indirizzo: https://www.apachefriends.org/ scegliere la versione per il proprio sistema operativo. Scaricare e installare il programma, va bene la directory predefinita ossia c:/xampp sotto Windows. Installare ovviamente il web server Apache, MySQL e phpMyAdmin per gestire il database.
Apache si collega sulla porta 80 per le connessioni http e sulla porta 443 per le connessioni https. Se avete queste porte impegnate, Apache non si avvierà a meno che non si intervenga sui file di configurazion. Il consiglio al momento è quello di liberare le porte in uso. Una volta installato XAMPP digitare http://localhost per verificare che l’installazione sia andata a buon fine. Per quanto riguarda V.S Code l’indirizzo è il seguente: https://code.visualstudio.com/ Scaricare e installare la versione per il proprio sistema operativo, e aggiungere le estensioni per il PHP.
Lascia un commento