Gestire i dispositivi mobili con Apache Mobile Filter

3 agosto 2012

Una delle esigenze attualmente più sentite dagli sviluppatori web è progettare i propri siti in modo compatibile con gli innumerevoli dispositivi mobili che il mercato offre. Per gli utilizzatori del web server Apache esiste un progetto open source, denominato AMF (Apache Mobile Filter), che permette in modo semplice di individuare le caratteristiche del dispositivo che sta inviando richieste HTTP. Le informazioni raccolte risulteranno disponibili al programmatore come variabili d’ambiente.

L’idea, sviluppata da Idel Fuschini, consiste nel mettere in comunicazione Apache con un Device Description Repository, ovvero un archivio di informazioni sulle funzionalità e caratteristiche di moltissimi dispositivi quali smart phone, tablet, console.

Alcuni dei repository utilizzabili sono WURFL, DetectRight e 51Degrees. Potremo così conoscere, ad esempio, la risoluzione dello schermo usato dal visitatore o se il suo browser supporta Ajax: in altri termini tutto ciò che ci consenta di adattarci alle sue peculiarità e rendere positiva l’esperienza di navigazione delle nostre pagine. In più il software consente il ridimensionamento automatico delle immagini e la ridirezione verso contenuti appositamente predisposti.

AMF richiede mod_perl 2, tramite tale modulo accede infatti alle API di Apache. Esso è costituito da una dozzina di componenti tra cui i “detection filters” rivestono il ruolo principale. Le informazioni raccolte (capabilities) da questi ultimi vengono poi passate ad altri moduli. Per non sovraccaricare il server, AMF implementa inoltre un meccanismo di caching. In realtà i sistemi sono due: uno utilizza il filesystem della macchina per memorizzare i dati, il secondo, dedicato ad architetture più complesse, si basa su memcached.

Di seguito vedremo come installare e configurare questo software open source, prendendo come riferimento un server Linux con sistema operativo Fedora e web server Apache 2.2.

Installazione

Come già accennato vi sono alcuni prerequisiti che dobbiamo rispettare. Sul nostro sistema dovranno essere installati:

  • il webserver Apache versione 2.0.x o 2.2.x o successive;
  • l’interprete Perl versione 5.8.8 o successive;
  • il modulo di Apache mod_perl2 versione 2.0.4 o successive;
  • Memcached versione 1.4.4 o più recenti.

Considerando Apache già funzionante, l’eventuale mancanza di qualche componente risulta velocemente risolvibile con YUM (su sistemi RedHat). Assunti i privilegi di root possiamo passare all’installazione dei pacchetti necessari:

$ yum install perl perl-GD mod_perl memcached

La presenza di Apache Mobile Filter all’interno dell’archivio perl CPAN, ci facilita ulteriormente il lavoro. Utilizzando gli automatismi dell’omonimo comando ci basterà digitare:

$ cpan Apache2::AMFWURFLFilter

Se non fosse disponibile, installate con YUM il pacchetto rpm perl-CPAN.  Dopo aver atteso con un po’ di pazienza l’output del comando cpan, finalmente potremo cominciare a testare il modulo AMF. Per prima cosa dobbiamo creare una directory di lavoro per il programma e renderla scrivibile da Apache. Ad esempio:

$ mkdir /home/AMF
$ chown apache.apache /home/AMF

A questo punto non ci resta che iniziare i nostri esperimenti partendo da alcune direttive di base per poi passare a qualche configurazione più avanzata.

Se vuoi aggiornamenti su Gestire i dispositivi mobili con Apache Mobile Filter inserisci la tua e-mail nel box qui sotto:
 
X
Se vuoi aggiornamenti su Gestire i dispositivi mobili con Apache Mobile Filter

inserisci la tua e-mail nel box qui sotto:

Ho letto e acconsento l'informativa sulla privacy

Acconsento al trattamento di cui al punto 3 dell'informativa sulla privacy