Installation de Horde

Horde est un framework qui comporte différentes applications. Cette page donne les indications nécessaires pour l'installation de Horde (le framework), Imp (le webmail) et Turba (le carnet d'adresse).


Julien  Marchal 
Université Nancy 2

Dates de modification
Revision 1.0 Passage en docBook
1. Pré-requis
1.1. PHP
1.2. Librairie IMAP
1.3. Autres librairies
1.4. Exemple de compilation :
1.5. Configuration
1.6. PEAR
1.7. Apache
2. Installation

1. Pré-requis

1.1. PHP

Pour utiliser Horde (et CAS), il faut prévoir une compilation de PHP avec certaines librairies :

Vous pouvez utiliser des versions de RPM de PHP comportant ces librairies, mais je vous conseille plutôt de passer par les sources.

1.2. Librairie IMAP

Elle est téléchargeable ftp://ftp.cac.washington.edu/imap/imap.tar.Z

mkdir /usr/local/lib/imap 
cp imap.tar.Z /usr/local/lib/imap
tar -zxvf imap.tar 
cd /usr/local/lib/imap/imap-2004g

Pour la librairie IMAP, j'applique un petit patch pour améliorer le fonctionnement CAS. Par défaut, si une connexion IMAP échoue (mauvais mot de passe) cette librairie retente l'ouverture 3 fois (alors que l'on ne fait qu'un seul appel php "imap_open"). Ce fait peut être génant dans le sens où avec CAS le mot de passe peut être "expiré", il faut donc ouvrir trois connections avant d'avoir un retour négative. Le patch consiste à modifier une variable MAXLOGINTRAILS pour ne faire qu'une ouverture en cas d'erreur. dans le fichier src/c-client/mail.h

/*#define MAXLOGINTRIALS 3 maximum number of login trials */
#define MAXLOGINTRIALS 1 /* maximum number of login trials */

 

Pour la suite cela reste classique

make lnp SSLTYPE=none
mkdir /usr/local/lib/imap/c-client
cp -r /usr/local/lib/imap/imap-2004g/c-client/* /usr/local/lib/imap/c-client/
ln -s /usr/local/lib/imap/c-client/c-client.a /usr/local/lib/imap/c-client/libc-client.a 

1.3. Autres librairies

La librairie IMAP est prêt pour la compilation PHP : --with-imap=/usr/local/lib/imap

1.4. Exemple de compilation :

 CPPFLAGS="-I/usr/kerberos/include/" \
 ./configure --prefix=/usr/local/php-4.3.3 \
 --with-apxs=/usr/local/apache/bin/apxs \
 --with-config-file-path=/usr/local/apache/conf \
 --with-ldap \
 --with-openssl \
 --with-imap=/usr/local/lib/imap \
 --with-mysql=/usr \
 --with-gettext\
 --with-zlib\
 --with-dom \
 --with-xml \
 --with-curl \
 --without-kerberos

1.5. Configuration

Le php se configure via le fichier php.ini ou dans la configuration apache (via des instructions php_admin_falg, php_admin_value,...). Pour Horde il faut faire attention au options suivantes :

1.6. PEAR

Les PEAR sont des librairies de code source de PHP, elles sont installées par défaut dans php (/usr/local/php-4.3.3/lib/php/). Elle permet une abstraction de bases de données, de gérer les logs, l'envoie de mail, ... Horde utilise les librairies suivantes :

Un utilitaire est forunit dans php pour télécharger ou mettre à jour les PEAR. Dans le répertoire des binaires de php :

./pear list 
./pear upgrade Log

1.7. Apache

Attention ! Horde ne foctionne que sur des apaches Version 1. Les traductions supportent mal la Version 2 de apache.

2. Installation

Vous pouvez vous référrer au document d'installation du package esup