Nicola D'Agostino (.net) - Articoli, traduzioni, grafica, web

CMS? No, powered by Apache

Minimale, efficiente, leggero come una piuma e una strabiliante dimostrazione della versatilità del più noto ed usato software per servire pagine web.

di Nicola D’Agostino

Con Webcodr è possibile creare un sito ed avere un sistema di gestione dei contenuti senza installare niente, configurare alcun database, e non scrivere nemmeno una riga di codice. Basta che ci sia Apache.

la piuma di Apache

Chi approda al sito web www.webcodr.com/apache-demo/ può trovare una scarna descrizione che spiega come l’intero sito sia la dimostrazione della potenza di Apache. Questa demo di Apache (da cui il nome) genera tutto il sito attraverso una combinazione di file .htaccess, XHTML e fogli di stile CSS.

Come si installa

Dopo aver scaricato l’archivio .tar dalla cartella /Download bisogna spacchettarlo con un software che gestisca questo formato (ad esempio col comando untar da shell o terminale) e posizionare il risultato nella root del nostro server web.

A questo punto possiamo subito lanciare il browser ed ammirare il risultato funzionante che dovrebbe assomigliare alla home del progetto.

webcodr in azione

Se non funziona vuol dire che c’è qualche ostacolo nel server web per cui non si riesce a far interpretare correttamente l’.htaccess da Apache e bisogna controllare le impostazioni di quest’ultimo. Aggiungiamo che alcuni servizi di hosting, soprattutto quelli più economici e da battaglia per vari motivi (ad esempio economici, ma anche di sicurezza) non permettono di usare un proprio .htaccess né tantomeno di mettere mano a impostazioni.

Chi infine è riuscito a far funzionare il tutto e vuole personalizzare ulteriormente il cms non ha che da aprire e modificare il .htaccess. All’indirizzo www.webcodr.com/apache-demo/Documentation/Installation.html
c’è la spiegazione commentata del file fornito, di cui si può approfittare per assemblare il setup che meglio ci soddisfa, dal messaggio di errore per i file non trovati alle icone da visualizzare nell’elenco dei file, delle directory e della navigazione.

Usiamolo

Quando si “spacchetta” il file scaricato ci ritroviamo i seguenti file e folder

I file che ci si presentano di base sono:

Documentation
Downloads
etc
footer.html
header.html
plain text document.txt
README

in rigoroso ordine alfabetico.

Di cui però nel browser vediamo solo

Documentation
Downloads
etc
plain text document.txt

Per aggiungere file o creare nuove directory visibili (e consultabili) via browser basta aggiungere gli oggetti nel filesystem (o fare un upload via ftp). Vanno bene documenti .txt, .html, .jpg, .gif .png e così via. Se si tratta di contenuto che il browser (da solo o con plugin) può gestire e visualizzare (audio, video) non c’è problema nemmeno per Apache Demo.

Sono però invisibili i file senza estensione (come il README) e due particolari documenti HTML chiamati header.html e footer.html perché nel file .htaccess ci sono delle direttive specifiche in merito come la seguente

IndexIgnore header.html footer.html

L'aspetto

Si può intervenire in maniera rapida ed efficace sul testo di presentazione di ogni directory proprio andando a modificare i due file HTML.

Il header (la testata) contiene anche il CSS e possiamo tradurre, aggiungere o personalizzare il testo che compare in cima e se vogliamo anche aggiungere della grafica o altro codice.

webcodr installato sul server Apache in locale

Lo stesso vale per il footer.html (il piede).

Ogni directory ha la sua brava coppia di header.html e footer.html e anche se può parere una inutile ripetizione, questo permette di personalizzare il sito illustrando i contenuti che si trovano nelle varie sottocartelle.

.htaccess? Chi era costui?

.htaccess è la contrazione di “hypertext access” ed è un file di configurazione di Apache a livello di directory, solitamente nascosto grazie al punto all’inizio del nome (secondo una convenzione UNIX). Un .htaccess è un banale file di testo che però fornisce direttive ad Apache su come deve elaborare le richieste dei client e presentare il contenuto (ma anche permettere o meno la visualizzazione o mostrare l’indirizzo) della directory in cui si trova e nelle sottodirectory.
La guida ufficiale di Apache a .htaccess è consultabile (in inglese) all’url: http://httpd.apache.org/docs/2.2/howto/htaccess.html

Fin nei minimi dettagli

Apache demo è stato realizzato da un gruppo di sviluppatori che si firma Webcodr. Sul loro sito o meglio blog si trova anche una spiegazione pratica molto dettagliata passo passo della creazione e del funzionamento dello strumento e dei file di cui è composto.

Una versione di questo articolo è stata pubblicata su "Hacker Journal" 146 del febbraio 2008