Prérequis
RoundCube, comme tous les webmails, utilise un certain nombre de services pour son afichage et sa connexion aux boites aux lettres. De plus RoundCube utilise un serveur mysql ( ou autres, cf doc INSTAL de RoundCube ).
Les prérequis sont donc :
– un serveur IMAP pour accéder aux boites aux lettres.
– un serveur web ( Apache ) pour afficher le webmail.
– PHP et les modules php-mysql d’Apache, car ce webmail est écrit en PHP.
– PCRE (perl compatible regular expression) installé.
– Un serveur MySQL pour stocker les paramètres de l’utilisateur.
Tous ces services doivent fonctionner correctement bien entendu 🙂
PHP doit avoir certaines options dans php.ini :
– Une taille de file_uploads compatible avec la taille maxi des pièces jointes que vous voulez permettre.
– Une limite memory_limit assez haute, afin d’avoir un temps d’exécution assez long pour inclure ces pièces jointes dans le message.
Installation
Télécharger la dernière version de RoubdCube sur le site du projet http://www.roundcube.net.
Décompresser l’archive et la placer dans l’arborescence d’apache.
tar xvfz roundcubemail-0.1beta2.2.tar.gz
mv roundcubemail-0.1beta2 /var/www/roundcube
Changer l’utilisateur lié à ce dossier, car c’est apache qui doit y accéder et pas root.
cd /var/www
chown -R apache: roundcube
Créer une base de données propre à RoundCube dans MySQL.
mysql -p
Entrez le mot de passe du compte root de MySQL, vous devez arriver au prompt « mysql> »
On crée la base et un utilisateur ayant les droits sur la base.
create database roundcube;
grant all on roundcube.* to 'roundcube'@'localhost' identified by 'mo2pass';
flush privileges;
On rempli la base avec la structure donnée par la distribution RiundCube.
use roundcube
source /var/www/roundcube/SQL/mysql.initial.sql
Les tables sont créées comme le montre la commande suivante :
mysql> show tables;
+---------------------+
Tables_in_roundcube |
+---------------------+
cache |
contacts |
identities |
messages |
session |
users |
+---------------------+
6 rows in set (0.00 sec)
On peut quitter la console MySQL avec la commande exit
.
Renommez les fichiers config/*.inc.php.dist en config/*.inc.php
cd /var/www/roundcube/config
mv db.inc.php.dist db.inc.php
mv main.inc.php.dist main.inc.php
Modifiez ces fichiers de config/* afin de correspondre à votre environnement local
Dans mon cas je change ceci dans le fichier main.inc.php.
$rcmail_config[‘enable_caching’] = FALSE; au lieu de TRUE car le serveur IMAP est sur la même machine que le serveur WEB.
$rcmail_config[‘default_host’] = ‘127.0.0.1’;
$rcmail_config[‘smtp_server’] = ‘smtp.caplaser.fr’;
Entrez ici le serveur smtp qui vous convient, en général celui du FAI.
$rcmail_config[‘locale_string’] = ‘fr’; au lieu de en, allez savoir pourquoi… 🙂
Les modifications dans le fichier db.inc.php, sont très simples.
$rcmail_config[‘db_dsnw’] = ‘mysql://roundcube:mo2pass@localhost/roundcube’; Pour le faire coller à ma configuration. Attention au mot de passe que vous avez donné précedemment.
La syntaxe est NomUtilisateur:MotDePasse@ServeurMySQL/NomBaseDeDonnées .
Paramétrage APACHE
Allez dans le dossier /etc/httpd/conf.d/
Créez un fichier roundcube.conf avec le contenu suivant :
#
# RoundCube est un webmail ecrit en PHP.
#
Alias /roundcube /var/www/roundcube
Modification limites PHP
Pour modifier les limites de php, il faut éditer le fichier /etc/php.ini.
Ci-dessous, les valeurs que j’ai modifié.
; Whether to allow HTTP file uploads.
file_uploads = On
; Maximum allowed size for uploaded files.
upload_max_filesize = 20M
;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;
max_execution_time = 300 ; Maximum execution time of each script, in seconds
max_input_time = 120 ; Maximum amount of time each script may spend parsing request data
memory_limit = 16M ; Maximum amount of memory a script may consume (8MB)
Il faudra adapter ces valeurs en fonction de la réaction de votre webmail.
En effet, si on intègre une pièce jointe un peu volumineuse, il faut plus de temps à apache pour faire la mainipulation et le timeout php peut être trop court.
Recharger apache afin qu’il relise sa configuration.
/etc/init.d/httpd reload
Le webmail devrait maintenant être disponible à l’url http://ip.du.serveur.apache/roundcube
Connectez-vous avec votre login, password du serveur IMAP et consultez ou expédiez des emails avec une interface assez sympa à mon goût.
N’hésitez pas à aller voir les préférences de l’utilisateur afin de personnaliser l’adresse email que recevra le destinataires des messages.
Un des attraits de ce webmail en comparaison des autres, est sa possibilité de se créer plusieurs identitées et d’envoyer les emails en choisissant celle qui vous va bien.