Web Design  »  Articoli  »  Web design 

Come includere codice esterno nelle pagine web

di: Wolfgang Cecchin     21 Gennaio 2002

Includere con Unix e Apache

Apache utilizza due comandi per effettuare le SSI (Server Side Includes, cioè le inclusioni lato-server). Nel file che effettua l'inclusione, nel punto in cui l'inclusione avviene dobbiamo scrivere la sintassi:

<!--#include file="mioFile.html" -->

Questa direttiva fa però riferimento all'inclusione di un file che si trova nella stessa directory rispetto alla pagina principale. Non è quindi possibile utilizzare un'indicazione di percorso.

Per utilizzare l'inclusione di un file tramite un percorso (assoluto o relativo) bisogna servirsi di un'altra direttiva:

<!--#include virtual="percorso/mioFile.html " -->

Da notare che con Apache di norma il file che include deve aver estensione shtml (cioè "server-parsed HTML"), mentre il file che viene incluso può avere qualsiasi estensione: è un particolare importante, perché se non viene attribuita al file che include un'estensione "shtml" l'inclusione non avviene.

Si tratta di un metodo di Apache per "snellire" il lavoro del web server: infatti soltanto i files con estensione "shtml" vengono processati per trovare ed effettuare le direttive di inclusione. I files "html" e "htm" invece vengono "serviti" al client così come sono, senza essere processati, dal momento che Apache in questo modo sa a priori che non contengono inclusioni.

Se la norma è quella di attribuire estensione "shtml" ai files che includono, l'amministratore del web server può però - se lo ritiene utile - cambiare quest'opzione e far sì che il web server processi anche file con estensioni differenti alla ricerca di inclusioni (è sufficiente che configuri il file httpd.conf di Apache aggiungendo - ad esempio - la riga "AddHandler server-parsed html" al posto di "AddHandler server-parsed shtml"). In questo modo però si appesantisce il web server, perché ogni pagina "html" viene esaminata alla ricerca dei comandi di inclusione.

Si tratta comunque di un'eccezione alla regola: di norma su Apache, soltanto se attribuite al file estensione "shtml" l'inclusione avrà luogo.

Il file che invece viene incluso può avere qualsiasi tipo di estensione consentita ("html","htm","txt","inc"). È da notare però che - a differenza di IIS - le inclusioni di Apache devono contenere solo codice HTML, non è possibile cioè includere codice (in linguaggio di scripting lato-server) da eseguire.

Guide Web design

Guida Progettazione siti web

Dall'analisi dei requisiti fino allo sviluppo e alla promozione:...

Guida Pubblicare un sito web

Le verifiche fondamentali da effettuare prima del lancio di un nuovo...

Guida Architettura dell'Informazione

L'Architettura dell'informazione è la disciplina che permette di...

Altre guide

Newsletter @Grafica e Web Design

Ogni settimana, direttamente nella tua e-mail: guide, articoli, tutorial e FAQ su Web Design e grafica per il Web.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Corso Google AdWords Base

27 Febbraio 2012 a Milano
Disponibilità: 7 Posti

Corso Google AdWords Base

28 Marzo 2012 a Roma
Disponibilità: 7 Posti