Mise en place de eGroupWare au Bureau Asie-Pacifique.
Attention : cette page est en cours de rédaction ! ET TOTALEMENT INCOMPLÈTE !!! |
Objectifs
- prioritaire : agenda collaboratif via le web
- secondaire : partage de contacts via le web (étudier la liaison au LDAP local)
Principes
Application web connue pour ses bogues de sécurité et son manque de maintenance => isolation dans un serveur dédié (CT 81)
Accès sécurisé via https://www.vn.auf.org/egroupware/ (ProxyPass vers le CT 81)
Mise en place de la version 1.6, la plus récente disponible dans backports.debian.org :
aptitude install -t lenny-backports egroupware postgresql-client- postgresql-client-8.4-
Connexion sur le serveur MySQL existant (CT 103), création de la base et des droits :
mysqladmin create egroupware echo "GRANT ALL ON egroupware.* TO `egroupware`@'ip-du-ct-81' IDENTIFIED BY 'le-mot-de-passe'" | mysql
Ajout des outils de correction orthographique :
aptitude install aspell-fr aspell-en aspell-vi
Support GroupDAV/CalDAV/CardDAV
Il faut au minimum eGroupWare version 1.6.003 pour un bon support.
Ensuite, pour une bonne auto-détection par certains clients il faut ajouter une redirection sur la racine du serveur web. Par exemple :
RedirectMatch ^/.well-known/(caldav|carddav)$ https://www.vn.auf.org/egroupware/groupdav.php/
De plus, quand on place le serveur derrière un proxy frontal il est nécessaire d'appliquer le patch suivant :
--- /usr/share/egroupware/phpgwapi/inc/class.groupdav.inc.php.orig 2010-11-06 13:23:12.000000000 +0700 +++ /usr/share/egroupware/phpgwapi/inc/class.groupdav.inc.php 2011-01-20 20:54:13.000000000 +0700 @@ -139,6 +139,7 @@ $this->translation =& $GLOBALS['egw']->translation; $this->egw_charset = $this->translation->charset(); + $this->base_uri = $GLOBALS['egw_info']['server']['webserver_url'] . '/groupdav.php/'; if (strpos($this->base_uri, 'http') === 0) { $this->principalURL = $this->_slashify($this->base_uri); --- /usr/share/egroupware/egw-pear/HTTP/WebDAV/Server.php.orig 2011-01-20 20:53:55.000000000 +0700 +++ /usr/share/egroupware/egw-pear/HTTP/WebDAV/Server.php 2011-01-20 21:10:23.000000000 +0700 @@ -167,8 +167,11 @@ if ($this->client_require_href_as_url) { // default uri is the complete request uri - $uri = (@$this->_SERVER["HTTPS"] === "on" ? "https:" : "http:") . '//'.$this->_SERVER['HTTP_HOST']; + //$uri = (@$this->_SERVER["HTTPS"] === "on" ? "https:" : "http:") . '//'.$this->_SERVER['HTTP_HOST']; + $webserver_url = $GLOBALS['egw_info']['server']['webserver_url']; + $p = strpos($webserver_url,'/',9); + $uri = ($p === FALSE) ? $webserver_url : substr($webserver_url,0,$p); } // we cant use SCRIPT_NAME, because it fails, if there's any url rewriting //error_log("pathinfo:\n". $this->_urldecode($this->_SERVER['REQUEST_URI']).":\n".$this->_SERVER['PATH_INFO']);
c'est un patch perso… rien d'officiel ici, mais ça marche comme il faut ensuite…