Progetto

Generale

Profilo

DadaMailSetup » Cronologia » Versione 15

Versione 14 (Amministratore Truelite, 21-08-2008 19:48) → Versione 15/18 (Amministratore Truelite, 26-03-2010 14:41)

[[TracNav(TOC)]] 
 == Installare e configurare Dada Mail == 

 [http://dadamailproject.com DadaMail] è un potente sistema per l'invio di newsletter via web scritto in Perl, il cui solo difetto (o pregio, a secona dei punti di vista) è quello di usare un approccio minimalista per la configurazione.  


 === Installazione === 

 Le istruzioni sul sito sono dettagliate, ma sono orientate alla tipica installazione nella propria home directory su un sito in hosting, qui vedremo come regolarsi con una installazione da fare a livello generale su un server. 

 Il primo passo è scaricare il {{{tar.gz}}} del programma e scompattarlo in una directory opportuna; nel nostro caso si è fatto: 
 {{{ 
 cd /usr/local/share 
 tar -xvzf /root/dada-2_10_16.tar.gz 
 chown -R root:root dada 
 }}}  

 Nella directory {{{/usr/local/share/dada/DADA}}} si troverà il file {{{Config.pm}}} in cui vanno modificate le seguenti 4 variabili (il file è piuttosto lungo perché contiene parecchia documentazione, si abbia cura di cercare le righe corrispondenti, l'uso di un editor con l'evidenziazione della sintassi aiuta parecchio): 
 {{{ 
 $PROGRAM_ROOT_PASSWORD = 'passwordsegreta' 
 $FILES = '/srv/dadamail'; 
 $MAILPROG = '/usr/sbin/sendmail'; 
 $PROGRAM_URL ='http://www.sito.it/cgi-bin/dada/mail.cgi'; 
 }}} 

 Dato che in genere {{{/srv/dadamail}}} {{{/var/dada}}} non esiste si abbia cura di crearla ed impostarne correttamente il proprietario: 
 {{{ 
 mkdir /srv/dadamail 
 chown www-data:www-data /srv/dadamail 
 }}} 

 Dato che [http://dadamailproject.com/ DadaMail] lavora come un CGI, si devono poi spostare nella opportuna directory il file {{{mail.cgi}}} e la precedente directory {{{DADA}}}, vale a dire: 
 {{{ 
 mkdir /usr/lib/cgi-bin/dada 
 cd /usr/lib/cgi-bin/dada 
 cp /usr/local/share/dada/mail.cgi . 
 chmod 755 mail.cgi 
 mv /usr/local/share/dada/DADA . 
 }}} 

 Se si vuole installare [http://dadamailproject.com/ DadaMail] in una directory diversa si dovrà poi modificare la configurazione di Apache perché questa sia utilizzabile come directory per i CGI. Fatto questo si potrà accedere alla pagina iniziale di configurazione puntando un browser all'indirizzo impostato nella variabile {{{PROGRAM_URL}}} (la configurazione di Apache deve consentire l'accesso a tale indirizzo e vedere {{{mail.cgi}}} come CGI).  

 Al primo accesso la pagina di benvenuto avviserà che la password impostata non è cifrata, mettendo a disposizione un link ad un form (che appare in una nuova finestra) in cui sarà possibile inserire una nuova password, per ottenerne un hash cifrato. Si tratterà di rieditare il file {{{Config.pm}}} assegnando a {{{PROGRAM_ROOT_PASSWORD}}} detto valore al posto di quello in chiaro, e di impostare la variabile: 
 {{{ 
 $ROOT_PASS_IS_ENCRYPTED ||= 1; 
 }}} 

 La pagina chiede poi di accettare la licenza (GPL), di promettere di non usare il programma per inviare Spam, e di creare una nuova lista, per la quale chiede la password di amministratore. Da quel momento in poi sulla pagina principale apparirà un elenco delle liste disponibili, con a fianco la possibilità di iscrizione, ed un link alla pagina di amministrazione generale.  

 === Installazione di software aggiuntivi === 

 Pur non essendo necessari al funzionamento di base dell'applicazione, una serie di librerie Perl di CPAN sono molto utili per poterne utilizzare alcune funzionalità avanzate, per questo motivo si consiglia di installare i seguenti pacchetti: 
 {{{ 
 apt-get install libxml-rss-perl libio-socket-ssl-perl libgd-perl libmime-perl \ 
   libmime-lite-perl libhtml-scrubber-perl libnet-dns-perl libio-socket-ssl-perl  
 }}} 

 Inoltre per poter inviare delle newsletter in HTML risulta molto comodo poter utilizzare direttamente dall'interfaccia web l'editor javascript {{{fckeditor}}}, per questo anzitutto occorre installare il relativo pacchetto con: 
 {{{ 
 apt-get install fckeditor 
 }}} 
 dopo di che occorrerà configurare [http://dadamailproject.com/ DadaMail] per poterlo utilizzare; in questo caso quello che serve è impostare dentro {{{Config.pm}}} la variabile {{{FCKEDITOR_URL}}} con la URL a cui lo stesso è accessibile, ad esempio con qualcosa del tipo: 
 {{{ 
 $FCKEDITOR_URL ||= 'http://www.sito.it/fckeditor'; 
 }}} 

 Ovviamente perché questo funzioni occorre che la URL precedente sia accessibile tramite Apache e corrispondente all'installazione del programma, nel caso di Debian questo si può ottenere aggiungendo una riga del tipo: 
 {{{ 
 Alias /fckeditor/ /usr/share/fckeditor/ 
 }}} 
 alla configurazione del proprio dominio web (in {{{/etc/apache2/sites-available/default}}} per il dominio generico, o nel file del rispettivo virtual host se se ne sta usando uno).  


 === Configurazione di alcuni parametri importanti === 

 La configurazione di default consente di impostare con la variabile {{{PROGRAM_URL}}} l'indirizzo web a cui si accede alle varie pagina dell'applicazione, questo però comporta, a meno di non volere mettere tutto il sito sotto HTTPS, che l'accesso è normalmente non cifrato, anche quando si accede alle funzionalità di amministrazione. E' pertanto fortemente consigliato di impostare anche la variabile {{{S_PROGRAM_URL}}}, che consente di indicare un indirizzo diverso per l'accesso alle pagine di amministrazione, nel qual caso si potrà indicare, rifacendosi a quanto visto prima, qualcosa del tipo: 
 {{{ 
 $S_PROGRAM_URL ='https://www.sito.it/cgi-bin/dada/mail.cgi'; 
 }}} 

 I parametri impostati nel {{{Config.pm}}} di default installato dai sorgenti hanno alcuni valori alquanto limitati, il principale dei quali è quello relativo alla quota imposta sul numero massimo di mailing list utilizzabili, il default è di 3 ma può essere modificato, andando a cambiare il valore della    variabile {{{LIST_QUOTA}}} con qualcosa del tipo: 
 {{{ 
 $LIST_QUOTA ||= 30; 
 }}} 

 Lo stesso dicasi per il numero massimo di iscritti ad una singola lista, che è di 5000 (già più ragionevole, ma talvolta insufficiente), in tal caso occorrerà cambiare il valore della variabile {{{SUBSCRIPTION_QUOTA}}} con qualcosa del tipo: 
 {{{ 
 $SUBSCRIPTION_QUOTA ||= 20000; 
 }}}