Blog

Friday 11 June 2010

read/add comments (11)

A partire da oggi, kiyuko.org viene servito da un nuovo server, nello specifico una VPS acquistata presso 123Systems Solutions.

Per la prima volta da quando ho creato la prima versione del mio sito, ho accesso come root sulla macchina che lo ospita, con completo controllo sul software installato. La distribuzione, non serve nemmeno dirlo, è Debian.

Come server web ho scelto lighttpd, che si presenta come un’alternativa leggera e performante ad Apache, più adatto a un server con 256MB di RAM. La configurazione è banale, e persino la gestione di domini e sottodomini multipli si riduce alla modifica di poche righe del file di configurazione, che usa una sintassi molto simile a quella di un semplice linguaggio di programmazione, risultando quindi – almeno per me – molto più leggibile.

Uno degli scogli che mi sono trovato ad affrontare nel passaggio dal vecchio al nuovo hosting è stato la necessità di convertire le regole di rewriting. Il mio sito ne fa un uso piuttosto massiccio per cose come URL puliti, generazione dinamica dei contenuti, mantenimento della compatibilità quando le pagine vengono spostate.

Lighttpd fornisce un modulo chiamato mod_rewrite, che però risulta troppo limitato per i miei scopi; quello che ho fatto è stato utilizzare mod_magnet per passare tutte le richieste ad uno script Lua, che opera la riscrittura.

Con un po’ di lavoro, ho convertito un file .htaccess di 52 righe in un .magnet.lua di 215 righe, commenti compresi. Tutto quello che ho perso in dimensione del file l’ho guadagnato in leggibilità, visto che la sintassi compatta e criptica delle regole di rewriting di Apache ha lasciato il posto a quella tersa del Lua. E in facilità di debug: quando una regola non funziona a dovere, ora mi basta inserire una print() da qualche parte per trovarmi il messaggio relativo direttamente nel log del web server. Per uno abituato a debuggare le regole di Apache, la differenza è la stessa che c’è tra il giorno e la notte.

Insomma, sono soddisfatto del nuovo setup, anche perché dovendo tirare su il server da solo ho imparato parecchie cose delle quali, nell’ambito di un hosting tradizionale, non avrei nemmeno sentito parlare. La parte migliore: tutta questa libertà mi viene a costare meno dell’hosting con singolo account ssh che avevo prima.