Il a longtemps de cela j’avais installé un z-push pour attaquer mon serveur Zimbra. A l’époque javais pas mal galéré avec l’intégration de z-push. 3 ans plus tard (ah ouai quand même 🙂 ) j’ai de nouveau tenté l’expérience avec la nouvelle version de z-push avec le backend pour zimbra.
Je refait un petit tuto pour le monter sur un nginx. Pour ça on commence par télécharger l’archive, la décompacter et la renommer :
cd /var/www/
wget http://zarafa-deutschland.de/z-push-download/final/2.0/z-push-2.0.6-1616.tar.gz
tar xzvf z-push-2.0.6-1616.tar.gz
mv z-push-2.0.6-1616 z-push
Puis le backend pour Zimbra:
wget http://downloads.sourceforge.net/project/zimbrabackend/Release55/zimbra55-zpush2--zimbra54-zpush1-as12.1.tgz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fzimbrabackend%2F
tar xzvf zimbra55-zpush2--zimbra54-zpush1-as12.1.tgz
mkdir z-push/backend/zimbra
cp zimbra55/z-push-2/* z-push/backend/zimbra/
une fois le système mis en place on modifie le config.php situé dans le dossier de z-push
define('BACKEND_PROVIDER', "BackendZimbra");
define('ZIMBRA_URL', 'http://zimbra.domain.tld');
define('ZIMBRA_USER_DIR', 'zimbra');
define('ZIMBRA_SYNC_CONTACT_PICTURES', true);
define('ZIMBRA_VIRTUAL_CONTACTS',true);
define('ZIMBRA_VIRTUAL_APPOINTMENTS',true);
define('ZIMBRA_VIRTUAL_TASKS',true);
define('ZIMBRA_IGNORE_EMAILED_CONTACTS',true);
define('ZIMBRA_HTML',true);
define('ZIMBRA_ENFORCE_VALID_EMAIL',true);
define('ZIMBRA_SMART_FOLDERS',false);
define('ZIMBRA_RETRIES_ON_HOST_CONNECT_ERROR',5);
define('ZIMBRA_DEBUG',false);
define('ZIMBRA_LOCAL_CACHE', false);
Puis on modifie la timezone dans le fichier z-push/lib/core/zpush.php
vers
date_default_timezone_set('Europe/Amsterdam');date_default_timezone_set('Europe/Paris');
Enfin on créé les fichiers/dossiers nécessaires au bon fonctionnement de z-push :
mkdir /var/log/z-push/ && touch /var/log/z-push/z-push.log /var/log/z-push/z-push-error.log && chown nginx: /var/log/z-push/z-push.log /var/log/z-push/z-push-error.log
et cela fonctionne directement ! Plus besoin de modifier le code pour qu’il fonctionne avec nginx 🙂
Référence : ZimbraBackend