======Installation de PHPList====== 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. =====Procédure===== ===Téléchargez l'archive sur le site de PHPList=== wget http://puzzle.dl.sourceforge.net/project/phplist/phplist/2.10.12/phplist-2.10.12.tgz ===Décompressez le fichier et déplacez le répertoire public_html dans le répertoire web de apache=== tar xvf phplist-2.10.12.tgz mv public_html/ /opt/phplist ===Création de la base de données "phplistdb"=== CREATE DATABASE `phplistdb` ; ===On donne les droits nécessaires à l'utilisateur=== 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". ===Configuration de phplist=== 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éation d'un template custom dans SME, pour créer un alias PHPList=== 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 # 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 La page d'administration de PHPList est accessible par cette url : http:///phplist/lists/admin/ ======Configuration et Sécurité====== ===Création d'un utilisateur "bounce"=== 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. ===Configuration de l'user bounce dans config.php=== 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"; ===Désactiver l'authentification intégrée à PHPList=== 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 ===Permettre l'envoi directe de messages en attente=== 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);