Cette page décrit la manière d'installation de PHPListe sur uune distribution linux SME Server.
PHPList est un portail web permettant le “publipostage”. Cela consiste à envoyer massivement des e-mails à une liste d'abonnées.
wget http://puzzle.dl.sourceforge.net/project/phplist/phplist/2.10.12/phplist-2.10.12.tgz
tar xvf phplist-2.10.12.tgz mv public_html/ /opt/phplist
CREATE DATABASE `phplistdb` ;
GRANT SELECT , INSERT , UPDATE , DELETE , CREATE , DROP , FILE , INDEX , ALTER , CREATE TEMPORARY TABLES , CREATE VIEW , SHOW VIEW , CREATE ROUTINE, ALTER ROUTINE, EXECUTE ON phplistdb.* TO 'phplist'@'localhost' identified by 'your_password'
A cet instant, nous avons un user “phplist” qui possède uniquement des droits sur la base “phplistdb”.
Dans le fichier de configuration list/config/config.php, renseignez les informations suivantes :
$database_name = "phplistdb"; $database_user = "phplist"; $database_password = "your_password"; define ("TEST",0);
Créer un fichier de template custom dans le répertoire /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf :
vim /etc/e-smith/templates-custom/etc/httpd/conf/httpd.conf/87PHPListAlias
# PhpList Alias Alias /phplist /opt/phplist <Directory /opt/phplist> # SSLRequireSSL Options -Indexes AllowOverride None order deny,allow { my $access = 'public'; if ("$access" eq "private") { $OUT .= " allow from $localAccess $externalSSLAccess"; } elsif ("$access" eq "public") { $OUT .= " allow from all"; } } AuthName "phplist" AuthType Basic AuthExternal pwauth require user admin Satisfy all AddType application/x-httpd-php .php .php3 </Directory>
La page d'administration de PHPList est accessible par cette url : http://<host>/phplist/lists/admin/
Pour le bon fonctionnement de PHPList, il faut une boîte mail bounce@domain.tld.
Pour cela, dans SME, creez un utilisateur “bounce”.
A partir de cet instant, s'assurer que le pop3 soit activé en local minimum, afin que PHPList puisse lister checker cette boîte mail.
Modifier le fichier de configuration comme ceci :
# Handling bounces. Check README.bounces for more info # This can be 'pop' or 'mbox' $bounce_protocol = 'pop'; # set this to 0, if you set up a cron to download bounces regularly by using the # commandline option. If this is 0, users cannot run the page from the web # frontend. Read README.commandline to find out how to set it up on the # commandline define ("MANUALLY_PROCESS_BOUNCES",1); # when the protocol is pop, specify these three $bounce_mailbox_host = 'localhost'; $bounce_mailbox_user = 'bounce@pi3rrot.tk'; $bounce_mailbox_password = 'Bounce33;'; $message_enveloppe = 'bounce@pi3rrot.tk'; # the "port" is the remote port of the connection to retrieve the emails # the default should be fine but if it doesn't work, you can try the second # one. To do that, add a # before the first line and take off the one before the # second line #$bounce_mailbox_port = "993/imap/ssl"; //changement manuel $bounce_mailbox_port = "110/pop3";
Nous allons utiliser l'authentification de Apache en Basic pour accèder à la page d'administration de PHPList
Il faut modififier dans le fichier config.php :
# set this to 1 if you want PHPlist to deal with login for the administrative # section of the system # you will be able to add administrators who control their own lists # default login is "admin" with password "phplist" # $require_login = 0
Il est possible de planifier l'envoi d'un message à une liste, où de choisir de tout envoyer par la fonction “Traitement de la file d'attente”.
Cette fonction envoie tout les messages, sans se soucier de la date à laquelle elle à été programmé.
# If you set up your system to send the message automatically, you can set this value # to 0, so "Process Queue" will disappear from the site # this will also stop users from loading the page on the web frontend, so you will # have to make sure that you run the queue from the commandline # check README.commandline how to do this define ("MANUALLY_PROCESS_QUEUE",1);