Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
sysadmin:install_roundcube [2009/12/05 11:00]
james ajout serveur IMAP webmail
sysadmin:install_roundcube [2014/10/30 11:10] (Version actuelle)
james modif tags
Ligne 1: Ligne 1:
 +{{tag>​mail webmail roundcube installation apache}}
 ====== Installation du webmail roundcube ====== ====== Installation du webmail roundcube ======
 [[http://​roundcube.net| Rouncube]] est un webmail en ajax qui a une p'tite bouille fort sympatique comme vous pouvez le voir sur ces [[http://​roundcube.net/​screens|screenhots]]. [[http://​roundcube.net| Rouncube]] est un webmail en ajax qui a une p'tite bouille fort sympatique comme vous pouvez le voir sur ces [[http://​roundcube.net/​screens|screenhots]].
Ligne 4: Ligne 5:
 ===== Prérequis ===== ===== Prérequis =====
  
-L'​installation sera effectuée sur une [[http://​www.debian.org]] ​debian ​stable (lenny a l'​heure ou ce tutorial est écrit) disposant d'un serveur web [[http://​www.apache.org|apache2]] gérant le [[http://​php.net|php]] et assumant que vous avez un serveur [[http://​www.mysql.fr|mysql]].+L'​installation sera effectuée sur une [[http://​www.debian.org|debian]] stable (lenny a l'​heure ou ce tutorial est écrit) disposant d'un serveur web [[http://​www.apache.org|apache2]] gérant le [[http://​php.net|php]] et assumant que vous avez un serveur [[http://​www.mysql.fr|mysql]] ​installé et fonctionnel.
  
 ==== Téléchargement de roundcube ==== ==== Téléchargement de roundcube ====
 la derniere version peut etre trouvée ici : http://​roundcube.net/​download,​ prendre la version "GPL (dependent)"​ car nous allons installer les dependances nous meme. la derniere version peut etre trouvée ici : http://​roundcube.net/​download,​ prendre la version "GPL (dependent)"​ car nous allons installer les dependances nous meme.
 ==== Installation des logiciels requis ==== ==== Installation des logiciels requis ====
 +<note important>​Cette section est obsolète en debian squeeze, regardez en bas de cette page</​note>​
 <​code>​ <​code>​
 apt-get install openssl aspell-fr php5-gd php5-mcrypt php5-mcrypt php5-dev libmagic-dev php5-mysql apt-get install openssl aspell-fr php5-gd php5-mcrypt php5-mcrypt php5-dev libmagic-dev php5-mysql
Ligne 138: Ligne 140:
 </​code>​ </​code>​
 ==== Finalisation de l'​installation ==== ==== Finalisation de l'​installation ====
 +  * activer le site :<​code>​
 +a2ensite webmail.mondomaine.com
 +/​etc/​init.d/​apache2 restart
 +</​code>​
   * Aller sur [[https://​webmail.mondomaine.com/​installer/​]] \\ Il ne devrait pas y avoir de "NOT OK" vous empechant d'​accéder a l'​etape 2 qui va créer effectivement la configuration.   * Aller sur [[https://​webmail.mondomaine.com/​installer/​]] \\ Il ne devrait pas y avoir de "NOT OK" vous empechant d'​accéder a l'​etape 2 qui va créer effectivement la configuration.
   * Vous pouvez ensuite vérfifier a l'​étape 3 que vous pouvez :   * Vous pouvez ensuite vérfifier a l'​étape 3 que vous pouvez :
Ligne 151: Ligne 157:
 ===== Enjoy ===== ===== Enjoy =====
 Et voila : maintenant vous devriez avoir un superbe webmail accessible via [[https://​webmail.mondomaine.com]] :-) Et voila : maintenant vous devriez avoir un superbe webmail accessible via [[https://​webmail.mondomaine.com]] :-)
 +
 +====== Mise à jour du webmail roundcube ======
 +
 +Pas mal de temps a passé depuis cette installation initiale, et la version 0.5.1 de roundcube est maintenant disponible.
 +Entre temps la version stable de debian est passée de lenny a squeeze, le serveur ayant été mis a jour en squeeze, cette mise a jour de roundcube va être effectuée sur cette version
 +
 +Les notes de mises a jour sont disponibles [[http://​trac.roundcube.net/​wiki/​Howto_Upgrade|ici]],​ voici les commandes que j'ai utilisé :
 +
 +===== Recupération et décompression de l'​archive =====
 +  * récupérer les sources (la encore les dépendances seront installées/​mises a jour à la main : on choisit donc la version téléchargeable sans dépendances)
 +<​code>​
 +cd /var/www/
 +wget http://​sourceforge.net/​projects/​roundcubemail/​files/​roundcubemail-dependent/​0.5.1/​roundcubemail-0.5.1-dep.tar.gz/​download -O roundcubemail-0.5.1-dep.tar.gz
 +tar xvzf roundcubemail-0.5.1-dep.tar.gz
 +</​code>​
 +  * réparer les permissions (ou www-data est le groupe de l'​utilisateur faisant tourner votre serveur web)
 +<​code>​
 +chown root:root -R roundcubemail-0.5.1-dep
 +cd roundcubemail-0.5.1-dep
 +chgrp www-data logs/ temp/ && chmod g+w logs/ temp/
 +</​code>​
 +
 +===== Installation des nouvelles dépendances =====
 +Il est conseillé d'​installer cette dépendance pour l'​internationalisation :<​code>​
 +apt-get install php5-intl</​code>​
 +Il faut ensuite recharger la configuration d'​apache :<​code>​
 +/​etc/​init.d/​apache2 reload</​code>​
 +
 +===== Configuration =====
 +<​code>​
 +cd /​var/​www/​roundcubemail-0.5.1-dep
 +mv config/ config.ORIG
 +ln -s /​etc/​roundcube config
 +</​code>​
 +
 +Reporter les nouvelles options de configuration dans les anciens fichiers entre les versions 0.3.1 et la 0.5.1 
 +  * ces lignes ont été ajoutées dans le fichier db.inc.php :<​code>​
 +$rcmail_config['​db_table_contactgroups'​] = '​contactgroups';​
 +$rcmail_config['​db_table_contactgroupmembers'​] = '​contactgroupmembers';</​code>​
 +  * pour le fichier main.inc.php vimdiff est votre ami (trop de modifications pour tout reporter ici ;p)
 +  * ces lignes ont été ajoutées dans le fichier mimetypes.php :<​code>​
 +    '​pdf'​ => '​application/​pdf',​
 +    '​ics'​ => '​text/​calendar',​
 +</​code>​
 +
 +===== Upgrade de la base de donnée =====
 +  * Ouvrir un shell mysql sur la base roundcube.
 +  * Lancer les requetes contenues dans le fichier /​var/​www/​roundcubemail-0.5.1-dep/​SQL/​mysql.update.sql correspondantes a l'​upgrade en cours. Il faut donc ici (mise a jour 0.3.1 -> 0.5.1)
 + ​lancer les commandes situées apres la balise :<​code>​
 +-- Updates from version 0.3.1</​code>​
 +Voici la liste complete :<​code>​
 +SET FOREIGN_KEY_CHECKS=0;​
 +ALTER TABLE `messages` DROP FOREIGN KEY `user_id_fk_messages`;​
 +ALTER TABLE `cache` DROP FOREIGN KEY `user_id_fk_cache`;​
 +ALTER TABLE `contacts` DROP FOREIGN KEY `user_id_fk_contacts`;​
 +ALTER TABLE `identities` DROP FOREIGN KEY `user_id_fk_identities`;​
 +
 +ALTER TABLE `messages` ADD CONSTRAINT `user_id_fk_messages` FOREIGN KEY (`user_id`)
 + ​REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
 +ALTER TABLE `cache` ADD CONSTRAINT `user_id_fk_cache` FOREIGN KEY (`user_id`)
 + ​REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
 +ALTER TABLE `contacts` ADD CONSTRAINT `user_id_fk_contacts` FOREIGN KEY (`user_id`)
 + ​REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
 +ALTER TABLE `identities` ADD CONSTRAINT `user_id_fk_identities` FOREIGN KEY (`user_id`)
 + ​REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE;
 +
 +ALTER TABLE `contacts` ALTER `name` SET DEFAULT '';​
 +ALTER TABLE `contacts` ALTER `firstname` SET DEFAULT '';​
 +ALTER TABLE `contacts` ALTER `surname` SET DEFAULT '';​
 +
 +ALTER TABLE `identities` ADD INDEX `user_identities_index` (`user_id`, `del`);
 +ALTER TABLE `identities` ADD `changed` datetime NOT NULL DEFAULT '​1000-01-01 00:​00:​00'​ AFTER `user_id`;
 +
 +CREATE TABLE `contactgroups` (
 +  `contactgroup_id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT,​
 +  `user_id` int(10) UNSIGNED NOT NULL DEFAULT '​0',​
 +  `changed` datetime NOT NULL DEFAULT '​1000-01-01 00:​00:​00',​
 +  `del` tinyint(1) NOT NULL DEFAULT '​0',​
 +  `name` varchar(128) NOT NULL DEFAULT '',​
 +  PRIMARY KEY(`contactgroup_id`),​
 +  CONSTRAINT `user_id_fk_contactgroups` FOREIGN KEY (`user_id`)
 +    REFERENCES `users`(`user_id`) ON DELETE CASCADE ON UPDATE CASCADE,
 +  INDEX `contactgroups_user_index` (`user_id`,​`del`)
 +) /*!40000 ENGINE=INNODB */ /*!40101 CHARACTER SET utf8 COLLATE utf8_general_ci */;
 +
 +CREATE TABLE `contactgroupmembers` (
 +  `contactgroup_id` int(10) UNSIGNED NOT NULL,
 +  `contact_id` int(10) UNSIGNED NOT NULL DEFAULT '​0',​
 +  `created` datetime NOT NULL DEFAULT '​1000-01-01 00:​00:​00',​
 +  PRIMARY KEY (`contactgroup_id`,​ `contact_id`),​
 +  CONSTRAINT `contactgroup_id_fk_contactgroups` FOREIGN KEY (`contactgroup_id`)
 +    REFERENCES `contactgroups`(`contactgroup_id`) ON DELETE CASCADE ON UPDATE CASCADE,
 +  CONSTRAINT `contact_id_fk_contacts` FOREIGN KEY (`contact_id`)
 +    REFERENCES `contacts`(`contact_id`) ON DELETE CASCADE ON UPDATE CASCADE
 +) /*!40000 ENGINE=INNODB */;
 +
 +SET FOREIGN_KEY_CHECKS=1 ;
 +
 +ALTER TABLE `users` CHANGE `last_login` `last_login` datetime DEFAULT NULL;
 +UPDATE `users` SET `last_login` = NULL WHERE `last_login` = '​1000-01-01 00:​00:​00';​
 +
 +ALTER TABLE `users` DROP INDEX `username_index`;​
 +ALTER TABLE `users` ADD UNIQUE `username` (`username`,​ `mail_host`);​
 +
 +ALTER TABLE `contacts` MODIFY `email` varchar(255) NOT NULL;
 +
 +TRUNCATE TABLE `messages`;
 +</​code>​
 +
 +
 +====== Installation des logiciels requis sous debian squeeze ======
 +installation des dépendances :<​code>#​ apt-get install php5-gd php5-intl php5-mcrypt php5-pspell libmagic1</​code>​
 +installation des modules PEAR nécessaires :<​code>#​ apt-get install php-auth php-mdb2 php-mdb2-driver-mysql php-mail-mime php-net-smtp php-net-socket</​code>​
  
sysadmin/install_roundcube.1260007215.txt.gz · Dernière modification: 2009/12/05 11:00 par james
Driven by DokuWiki Recent changes RSS feed Valid CSS Valid XHTML 1.0