Che cos'è lo scripting lato server?
Scripting sul lato server è un termine principalmente utilizzato per servire contenuto personalizzato tramite il protocollo di trasferimento ipertestuale (HTTP) su un server Web facendo eseguire al server piccoli programmi. Questi programmi, generalmente scritti in un linguaggio di scripting, vengono eseguiti dal server all'arrivo di una richiesta client. A seconda dei parametri forniti dal client al momento della richiesta, lo script genera quindi una pagina Web per il client. Le pagine Web create in questo modo vengono spesso definite pagine dinamiche. Ciò è in contrasto con uno script sul lato client che viene inviato dal server al client richiedente e quindi eseguito.
Le prime tecniche di scripting lato server sono nate al fine di fornire contenuti unici all'utente che ha effettuato la richiesta, oltre a risparmiare tempo riducendo la modifica manuale dei documenti HTML (hypertext markup language). Gli script lato server erano spesso file eseguibili di piccole dimensioni contenenti una serie di comandi da passare al sistema operativo. Il demone web, il software che esegue il web server, userebbe questi script di shell per eseguire ulteriormente un programma aggiuntivo residente sul computer host. Questa tecnica generale è stata quindi definita nel 1993 nello standard CGI (Common Gateway Interface) sviluppato dall'Internet Engineering Task Force (IETF). Nella maggior parte dei casi, questi primi script CGI sono stati utilizzati per inviare le risposte del database dal server al client richiedente.
Man mano che venivano sviluppati linguaggi di script interpretati, come Perl e PHP: Hypertext Preprocessor (PHP), anche i metodi di scripting lato server si sono evoluti. I daemon HTTP sono stati aggiornati per includere estensioni di utilizzo che consentivano di chiamare questi vari linguaggi di script dal demone Web stesso, anziché essere passati al sistema operativo sull'host. Con questa aggiunta, parti del linguaggio di scripting potrebbero essere incluse nel documento HTML. Mentre il server Web legge un documento prima di inviarlo sul Web, verifica ed esegue uno degli script all'interno del documento.
Poiché il contenuto richiamato dallo scripting lato server risiede in un database, può essere praticamente qualsiasi cosa. Contenuto come descrizioni dei prodotti, variazioni di prezzo, voci di blog, immagini e persino formattazione viene archiviato nel database. È anche possibile nidificare uno snippet di script lato server all'interno di un altro, in cui il primo script acquisisce determinati dati dal database, ma chiama anche un secondo script che accede a dati secondari. Ciò è utile, ad esempio, quando si forniscono contenuti standard abbastanza personalizzati con contenuti nidificati aggiuntivi che possono essere sensibili al tempo o ancora sconosciuti, come commenti su una voce del weblog. La manutenzione del sito Web, quindi, comporta l'aggiornamento dei dati nel database, che avrà effetto su ogni pagina del sito Web con lo script incluso per richiamare tali dati.
Molte delle tecniche di scripting lato server sono state ulteriormente sviluppate in quelli che sono noti come sistemi di gestione dei contenuti (CMS). PHP è probabilmente il linguaggio più frequentemente utilizzato per questo scopo, funzionante al centro di molte implementazioni CMS. Qui, un utente che gestisce un sito Web in esecuzione su un CMS modificherà i suoi documenti HTML per includere quelli che sono chiamati tag. I tag sono essenzialmente degli spunti per il CMS per indicare quale script includere nel documento. Il CMS può quindi essere personalizzato creando script aggiuntivi e i relativi tag associati.