Outils personnels
Vous êtes ici : Accueil GNU / Linux Debian Installer Horde Groupware Webmail Edition sur Debian 4.0 Etch ou 5.0 Lenny
Actions sur le document
  • Send this page to somebody
  • Print this page
  • Add Bookmarklet

Install Horde Groupware Webmail Edition on Debian 4.0 Etch

Par Pierre-Yves Landuré - Dernière modification 19/12/2012 19:59

The Horde project aim to create a free groupware. It is coded in PHP and provide one of the best WebMail available for now. This article help you to install it on Debian 4.0 Etch.

Install

The Horde project provide a very complete groupware, divided in many software projects. These softwares are available either alone, either in the bundle  Horde Groupware Webmail Edition. This guide help you to install this bundle. First, we install the needed software packages :

/usr/bin/apt-get install libapache2-mod-php5 php5-gd php5-mysql php5-mcrypt php5-imap php5-tidy php5-cli php-pear

In order for Horde to work flawlessly, we rise the memory limit of the Apache 2 PHP module :

/bin/sed -i -e 's/memory_limit = .*/memory_limit = 128M/' /etc/php5/apache2/php.ini

You can also enhance Horde performances by installing memcached :

apt-get install memcached php5-memcache

We upgrade the PEAR install :

/usr/bin/pear upgrade-all

We now install PEAR and PECL extensions recommended by Horde. First, we install the packages needed in order to build the extensions :

/usr/bin/apt-get install libmagic-dev libgeoip-dev make php5-dev

And we build and install the PECL extensions :

  • fileinfo :
    This extension allow to enhance attached files management.
    /usr/bin/pecl install fileinfo
    /bin/echo "extension=fileinfo.so" | /usr/bin/tee /etc/php5/conf.d/fileinfo.ini
  • lzf :
    This extension allow to reduce the size of sessions (and so the server memory usage).
    /usr/bin/pecl install lzf
    /bin/echo "extension=lzf.so" | /usr/bin/tee /etc/php5/conf.d/lzf.ini
  • geoip :
    This extension enhance the geolocation of IP addresses. But, due to version incompatibility, it is not simple to install it on Etch.
  • idn :
    This extension allow to use internationalized domain names. But, for now on, this extension is still Beta.

We set the last version number of Horde Groupware Webmail Edition that we are willing to install :

VERSION=1.0.3

Note : To install the 1.1 RC version of Horde, with AJAX and SyncML support :

VERSION=1.1-rc1

We download Horde Groupware Webmail Edition :

/usr/bin/wget http://ftp.horde.org/pub/horde-webmail/horde-webmail-$VERSION.tar.gz \
--output-document=/tmp/horde-webmail-$VERSION.tar.gz

We untar the downloaded file :

/bin/tar --directory /var/www -xzf /tmp/horde-webmail-$VERSION.tar.gz

We rename the created folder :

/bin/mv /var/www/horde-webmail-$VERSION /var/www/horde-webmail

We can now configure this software.

Horde configuration

Note : Horde need a database. If you want you can install a MySQL server, or create a database on such a server by following my article MySQL for Debian 4.0 Etch.

The Horde configuration is quite complex because of the bunch of parameters. I encourage you to read the Horde documentation in order for your system to be configured exactly to you needs. This guide only help you to create a working but basic Horde configuration. In order to do this, we use the script provided by Horde :

/usr/bin/php /var/www/horde-webmail/scripts/setup.php

Answer to the questions of this script.

Note : If your IMAP server is not on the server where is installed Horde, you need to edit the IMP configuration :

/usr/bin/vim /var/www/horde-webmail/imp/config/servers.php

Once the configuration done, you can check that nothing is missing by visiting :

Note : Don't worry about the memory limit error. 128 MB should be sufficient.

Default email domain

We now set the contact email used when a user encounter problems. We also set the default domain for users' email adresses, when Horde can not detect it :

/bin/sed -i -e "s/^\(.*problems.*email.*=\).*;/\1 'contact@votre-domaine.com';/" /var/www/horde-webmail/config/conf.php
/bin/sed -i -e "s/^\(.*problems.*maildomain.*=\).*;/\1 'votre-domaine.com';/" /var/www/horde-webmail/config/conf.php

Log file

We change the location of Horde log file :

touch /var/log/horde.log
/bin/chown www-data:www-data /var/log/horde.log
/bin/chmod 0640 /var/log/horde.log
/bin/sed -i -e 's/\/tmp\/horde\.log/\/var\/log\/horde\.log/' /var/www/horde-webmail/config/conf.php

And we setup the log rotation for this log file :

/bin/cp /var/www/horde-webmail/scripts/horde.logrotate /etc/logrotate.d/horde

Memory caching

First, be sure that the memory cache is installed :

apt-get install memcached php5-memcache
/etc/init.d/apache2 restart

We enable the memory cache support in Horde :

/bin/sed -i -e 's/^\(.*memcache.*enabled.*=\).*;/\1 true;/' /var/www/horde-webmail/config/conf.php

And we set it up :

/bin/sed -i -e "/^\(.*conf.*memcache.*enabled.*=\).*/i\
\$conf['memcache']['hostspec'] = array('localhost');\n\
\$conf['memcache']['port'] = array('11211');\n\
\$conf['memcache']['weight'] = array();\n\
\$conf['memcache']['persistent'] = false;\n\
\$conf['memcache']['compression'] = false;\n\
\$conf['memcache']['large_items'] = true;" /var/www/horde-webmail/config/conf.php

Cache location

We create a secure cache folder for Horde :

/bin/mkdir /var/cache/horde
/bin/chown www-data:root /var/cache/horde
/bin/chmod 0700 /var/cache/horde

We set up Horde so that it use this folder for its cache files :

/bin/sed -i -e "/^\(.*conf.*umask.*=\).*/a\
\$conf['tmpdir'] = '/var/cache/horde';" /var/www/horde-webmail/config/conf.php

We configure the regular clean up of generated cache files :

/bin/cp /var/www/horde-webmail/scripts/temp-cleanup.cron /etc/cron.daily/horde-temp-cleanup
/bin/chmod +x /etc/cron.daily/horde-temp-cleanup
/bin/sed -i -e 's/^\(TMP_DIR=\).*/\1\/var\/cache\/horde/' /etc/cron.daily/horde-temp-cleanup

Sending alert emails

We now configure Horde to send alert emails :

/bin/echo "# /etc/cron.d/horde : crontab fragment for horde
# Horde Alarms
*/5 * * * * /usr/bin/php /var/www/horde-webmail/scripts/alarms.php" \
| /usr/bin/tee /etc/cron.d/horde

Sessions monitoring tool

If you want to monitor the Horde sessions, run the following command line :

/bin/chown www-data /var/lib/php5

Warning : This can be a security risk, so I don't recommend this.

Attached files management

If you want to be able to preview your attached files in Horde without download them, here is the command line allowing you to install needed softwares :

/usr/bin/apt-get install unrtf libwpd-tools xlhtml source-highlight ppthtml rpm wv enscript

Once this done, we correct the paths to theses softwares in Horde configuration :

sed -i -e 's/\/usr\/local\/bin\/xlhtml/\/usr\/bin\/xlhtml/' \
-e 's/\/usr\/local\/bin\/ppthtml/\/usr\/bin\/ppthtml/' \
/var/www/horde-webmail/config/mime_drivers.php

And we enable the use of the installed tools in Horde :

sed -i -e "s/\/\/ \('deb'\)/\1/g" \
-e "s/\/\/ \('enscript'\)/\1/g" \
-e "s/\/\/ \('msword'\)/\1/g" \
-e "s/\/\/ \('msexcel'\)/\1/g" \
-e "s/\/\/ \('mspowerpoint'\)/\1/g" \
-e "s/\/\/ \('rpm'\)/\1/g" \
-e "s/\/\/ \('rtf'\)/\1/g" \
-e "s/\/\/ \('srchighlite'\)/\1/g" \
-e "s/\/\/ \('webcpp'\)/\1/g" \
-e "s/\/\/ \('wordperfect'\)/\1/g" \
/var/www/horde-webmail/config/mime_drivers.php

Now, we tell Horde where to find the MIME database :

/bin/sed -i -e "/^\(.*conf.*sessionhandler.*type.*=\).*/a\
\$conf['mime']['magic_db'] = '/usr/share/file/magic';" /var/www/horde-webmail/config/conf.php

IMP configuration

In order to enhance the mail reading experience, we change the default IMP configuration :

Inline HTML mails

By default, you need to download the mails written in HTML. This is not very easy. These command lines modify this behaviour :

/bin/sed -i -e '/.*mime_drivers.*imp.*html.*=.*array.*/{n;d}' /var/www/horde-webmail/imp/config/mime_drivers.php
/bin/sed -i -e "/.*mime_drivers.*imp.*html.*=.*array.*/a\
'inline' => true," /var/www/horde-webmail/imp/config/mime_drivers.php

Adapting to Mozilla Thunderbird defaults

If your users use Mozilla Thunderbird, you should change the Horde default folders to the one used by Mozilla Thunderbird :

  • Sent mails folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'sent-mail',/\1 'Sent',/" /var/www/horde-webmail/imp/config/prefs.php
  • Drafts folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'drafts',/\1 'Drafts',/" /var/www/horde-webmail/imp/config/prefs.php
  • Trash folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'trash',/\1 'Trash',/" /var/www/horde-webmail/imp/config/prefs.php
  • Junk mail folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'Spam',/\1 'Junk',/" /var/www/horde-webmail/imp/config/prefs.php

Adapting to Outlook defaults

The following command lines are for a french Outlook, but you can change them to fit your needs :

  • Sent mails folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'sent-mail',/\1 '&AMk-l&AOk-ments envoy&AOk-s',/" /var/www/horde-webmail/imp/config/prefs.php
  • Drafts folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'drafts',/\1 'Brouillons',/" /var/www/horde-webmail/imp/config/prefs.php
  • Trash folder :
    /bin/sed -i -e "s/^\(.*'value' =>\).*'trash',/\1 '&AMk-l&AOk-ments supprim&AOk-s',/" /var/www/horde-webmail/imp/config/prefs.php

Attached files preview

In order to make available the attached files preview, run this command line :

/bin/sed -i -e 's/^\(.*mailbox.*show_preview.*=\).*;/\1 true;/' /var/www/horde-webmail/imp/config/conf.php

Enabling the cache

In order to make the messages display faster, you need to enable the use of cache in IMP. To do this, run the command line :

/bin/sed -i -e 's/^\(.*mboxcache.*use_mboxcache.*=\).*;/\1 true;/' /var/www/horde-webmail/imp/config/conf.php

And configure the cache :

/bin/sed -i -e "/^\(.*conf.*mboxcache.*use_mboxcache.*=\).*/i\
\$conf['mboxcache']['use_compress'] = false;\n\
\$conf['mboxcache']['preview_size'] = 1000;\n\
\$conf['mboxcache']['lifetime'] = 2592000;" /var/www/horde-webmail/imp/config/conf.php

This command lines will do the same for messages list :

/bin/sed -i -e 's/^\(.*mlistcache.*use_mlistcache.*=\).*;/\1 true;/' /var/www/horde-webmail/imp/config/conf.php
/bin/sed -i -e "/^\(.*conf.*mlistcache.*use_mlistcache.*=\).*/i\
\$conf['mlistcache']['lifetime'] = 604800;" /var/www/horde-webmail/imp/config/conf.php

Priority and attached files presence display in the messages list

In order to display mail priority and attached files presence in the messages list, use the following command line (the cache should be enabled) :

/bin/sed -i -e 's/^\(.*mailbox.*show_attachments.*=\).*;/\1 true;/' \
-e 's/^\(.*mailbox.*show_xpriority.*=\).*;/\1 true;/' \
/var/www/horde-webmail/imp/config/conf.php

CSS and Javascript Cache

In order to accelerate pages loading, it is possible to lighten Javascript and CSS files. This is the goal of this configuration :

  • For Javascript caching :
    /bin/sed -i -e 's/^\(.*server.*cachejs.*=\).*;/\1 true;/' /var/www/horde-webmail/imp/config/conf.php
    /bin/sed -i -e "/^\(.*conf.*server.*cachejs.*=\).*/i\
    \$conf['server']['cachejsparams']['timeout'] = 86400;\n\
    \$conf['server']['cachejsparams']['mtime'] = false;" /var/www/horde-webmail/imp/config/conf.php
  • For CSS caching :
    /bin/sed -i -e 's/^\(.*server.*cachecss.*=\).*;/\1 true;/' /var/www/horde-webmail/imp/config/conf.php
    /bin/sed -i -e "/^\(.*conf.*server.*cachecss.*=\).*/i\
    \$conf['server']['cachecssparams']['timeout'] = 86400;\n\
    \$conf['server']['cachecssparams']['mtime'] = false;" /var/www/horde-webmail/imp/config/conf.php

Note : If DIMP is present, you can activate the Javascript and CSS caching for this GUI :

  • For Javascript caching :
    /bin/sed -i -e 's/^\(.*server.*cachejs.*=\).*;/\1 true;/' /var/www/horde-webmail/dimp/config/conf.php
    /bin/sed -i -e "/^\(.*conf.*server.*cachejs.*=\).*/i\
    \$conf['server']['cachejsparams']['timeout'] = 86400;\n\
    \$conf['server']['cachejsparams']['mtime'] = false;" /var/www/horde-webmail/dimp/config/conf.php
  • For CSS caching :
    /bin/sed -i -e 's/^\(.*server.*cachecss.*=\).*;/\1 true;/' /var/www/horde-webmail/dimp/config/conf.php
    /bin/sed -i -e "/^\(.*conf.*server.*cachecss.*=\).*/i\
    \$conf['server']['cachecssparams']['timeout'] = 86400;\n\
    \$conf['server']['cachecssparams']['mtime'] = false;" /var/www/horde-webmail/dimp/config/conf.php

Enhancements

You will find in this section various little things that, without being mandatory, will enhance greatly your Horde installation.

Fortunes

In order to get a fun message each time you log in, install the needed software :

/usr/bin/apt-get install fortunes

And configure Horde to use it :

/bin/sed -i -e "/^\(.*conf.*portal.*fixed_blocks.*=\).*/a\
\$conf['fortune']['exec_path'] = '/usr/games/fortune';" /var/www/horde-webmail/config/conf.php

Spell checking

In order to check the spelling of the mails you write, install aSpell :

/usr/bin/apt-get install aspell-en aspell-fr

And configure IMP to use it :

/bin/sed -i \
-e "s/^\(.*spell.*driver.*=\).*;/\1 'aspell';/" \
-e "/^\(.*conf.*spell.*driver.*=\).*/i\
\$conf['spell']['path'] = '/usr/bin/aspell';" /var/www/horde-webmail/imp/config/conf.php

Encryption

Il you want to encrypt your mails using GnuPG, install GnuPG :

/usr/bin/apt-get install gnupg

And configure IMP to user it :

/bin/sed -i -e "/^\(.*conf.*utils.*gnupg_keyserver.*=\).*/i\
\$conf['utils']['gnupg'] = '/usr/bin/gpg';" /var/www/horde-webmail/imp/config/conf.php

We also configure Mnemo to use it :

/bin/sed -i -e "/^\(.*conf.*menu.*print.*=\).*/i\
\$conf['utils']['gnupg'] = '/usr/bin/gpg';" /var/www/horde-webmail/mnemo/config/conf.php

OpenSSL

I have not understand the goal of this, but if this is of use to you, here is how to enable it. Install OpenSSL :

/usr/bin/apt-get install openssl ca-certificates

And configure IMP to use it :

/bin/sed -i -e "/^\(.*conf.*utils.*gnupg_timeout.*=\).*/a\
\$conf['utils']['openssl_cafile'] = '/etc/ssl/certs';\n\
\$conf['utils']['openssl_binary'] = '/usr/bin/openssl';" /var/www/horde-webmail/imp/config/conf.php

More

Here is a list of things i don't talk about in this article, but that you can find in Horde configuration interface :

  • Meteo from weather.com
  • IP addresses geolocation
  • Google Search API
  • Google Maps API

I encourage you to explore Horde configuration if these tools are of use to you.

Setup with Cyrus Imap

If you have a Cyrus Imap server, you probably want Horde to configure your mails filters in Sieve. In order to do this, we need to install one more PEAR package :

/usr/bin/pear install Net_Sieve

Once this done, you need to edit the Sieve backend of Ingo :

/usr/bin/vim /var/www/horde-webmail/ingo/config/backends.php

You will find in this file a backend named 'sieve'. You need to change the values of 'preferred' and 'hostspec' to fit your needs. Then delete or comment the other backends to allow Ingo to use Sieve as filtering engine.

You also need to edit the 'hordeauth' value, it need to be changed from "true" to "'full'" :

 'hordeauth' => 'full',

Users black list

If you want to be able to restrein some users to use Horde, you can do this by using the "preauthenticate" hook. In order to activate this functionnality, you need to enable the hook:
/bin/sed -i -e "s/^\(.*hooks.*preauthenticate.*=\).*;/\1 true;/" /var/www/horde-webmail/config/conf.php
Now, add a configuration parameter for your black list :
/bin/sed -i -e "/^\(.*auth.*driver.*=\).*/a\
\$conf['auth']['blacklist'] = array( /* 'my_blacklisted_login', */ );" /var/www/horde-webmail/config/conf.php

Then, add your custom hook function to the hooks.php file :

echo "
// Here is an _horde_hook_preauthenticate that allow you to black list logins.
if (! function_exists('_horde_hook_preauthenticate')) {
function _horde_hook_preauthenticate(\$userID, \$credential, \$realm)
{
return ! in_array(\$userID, \$GLOBALS['conf']['auth']['blacklist']);
}
}" | /usr/bin/tee -a /var/www/horde-webmail/config/hooks.php

From now on, you can add a login to the black list with the following command lines. First, setup the login to blacklist :

LOGIN=blacklisted_user

And run this command line to add it to the black list configuration :

/bin/sed -i -e "s/^\(.*auth.*blacklist.*=.*\));.*/\1 '$LOGIN',);/" /var/www/horde-webmail/config/conf.php

Use behind a proxy serveur

If you want to use Apache 2 or Squid as a proxy before your Horde server, here are the change to make (for a proxy server using HTTPS and with Horde as /) :

  • In the file /var/www/horde-webmail/config/conf.php :
    $conf['use_ssl'] = 1;
    $conf['server']['name'] = 'imp.votre-domaine.fr';
    $conf['server']['port'] = 443;
    ...
    $conf['cookie']['domain'] = $conf['server']['name'];
    $conf['cookie']['path'] = '/';
  • In the file /var/www/horde-webmail/config/registry.php :
        'webroot' => '' /* _detect_webroot() */,

Security enhancement

Warning : run this step only when your Horde is perfectly configured, but before opening it to the Internet users.

In order to harden Horde, we change configuration files permissions :

/usr/bin/find /var/www/horde-webmail -type f -wholename "*config/*" | /usr/bin/xargs /bin/chown -R root:www-data
/usr/bin/find /var/www/horde-webmail -type f -wholename "*config/*" | /usr/bin/xargs /bin/chmod 0440

We disable the test.php files :

/usr/bin/find /var/www/horde-webmail -type f -name "test.php" | /usr/bin/xargs /bin/chmod a-rwx

We allow access to the configuration scripts to the root user only :

/usr/bin/find /var/www/horde-webmail -type d -name "scripts" | /usr/bin/xargs /bin/chown -R root:root
/usr/bin/find /var/www/horde-webmail -type d -name "scripts" | /usr/bin/xargs /bin/chmod -R go-rwx

And to harden even more our Horde install, we disable the write permission on all of Horde source :

/bin/chmod -R ugo-w /var/www/horde-webmail

We disable the display of PHP source code to users when errors occurs :

/bin/echo "# Secure PHP for horde
expose_php = Off
display_errors = Off
log_errors = On
register_globals = Off
" | tee /etc/php5/conf.d/horde.ini

And we restart Apache 2 to enable this configuration :

/etc/init.d/apache2 restart

I also encourage you to use Horde through a HTTPS connection in order to your emails account passwords no to be readable on the network.

Thanks

Thanks!

Posté par gimili le 12/02/2008 02:15
This was VERY helpful! **Thanks!** I use horde stable. I would like to use Dimp but I am worried about running into trouble. Any comments about not using the stable versions.

i do use dimp

Posté par lwolf le 12/02/2008 05:25
and it is quite stable. I think that some functionnalities may be a little buggy, but overall, the RC1 is ready for daily use. The main thing work quite well and is really impressive.

and thanx for your comment, i was desesperately waiting for a good feed back on this article :D

Test, just a test

Posté par ArthurAXIOPQM le 06/11/2018 09:01
Hello. And Bye.

Test, just a test

Posté par ArthurAXIOPQM le 08/11/2018 23:00
Hello. And Bye.

great job!

Posté par california le 19/02/2008 22:48
Great article! I have used Horde for many years with much success. I just got a new server and used your guide to set up a fresh horde install. Thanks for saving me a lot of time and brain. Great sed usage too! Cheers from California.

Great job .. some help

Posté par johncuba le 26/02/2008 22:09
Hi Pierre great job ... we are very happy and pleasure with your help ...

We need define more than 1 server ... most of are pop3 servers .. then we define in /imp/config/servers.php but in the first page no combox is show .. some help about please ?


can't really help

Posté par Pierre-Yves Landuré le 27/02/2008 06:36
I'm not a Horde "specialist". All I can say to you is that you should really consider using Imap.

For help on Horde, you could try the Wiki : http://wiki.horde.org/ (although i take a look and found nothing on your problem, but you should try).

I encourage you to go to the #horde channel of Freenode IRC network. I've found a great deal of help on this channel.

I'm sorry i could not help you more, it may not apparent in this document, but i've setted up Horde for my personnal usage (i'm the only one to use it to connect to my personal Imap server) (yep, i've setted up such a complex network for my personal use :D)

Good luck with your problem

Celluar models household

Posté par engipulgeIA le 24/09/2017 22:56
http://fjdhgksf76w444.com hi everyone

Thanks, and one suggestion

Posté par Saint Aardvark le 15/04/2008 22:14
Thanks very much for this HOWTO. One problem I came across is that, after login, the browser just sat there waiting for a response from the server. Meanwhile, the webserver CPU usage just kept going up and up, and on the mail server (another machine), the IMAP process was steadily going through every single file in my home directory.

The solution was simple: the IMAP server uses ~/.mailboxlist to keep track of what mailboxes are in use. To tell IMP to use this, I edited imp/config/prefs.php, searched for $_prefs['subscribe'], and set 'value' to 1.

Couldn't have done it without your help

Posté par Ryan - Melbourne Aust. le 09/07/2008 21:49
Brilliant. Thank you. You're a rock star.

configuring group shares

Posté par James le 23/07/2008 01:19
This is a great article for getting it installed. I'm having problems setting up group shares. I'm using postfix and dovecot. I would appreciate if someone could point me in the right direction to find the help I need to settup group shares. Thanks for your help

Great guide

Posté par Juan le 03/08/2008 18:15
Hi!

I have taken your guide as base for my manual (http://wiki.nutum.es/linux/samba/samba_ldap_mds/inicio), in spanish. Great work!

Regards.

Could not view message

Posté par Saki le 21/08/2008 10:51
Thanks for ur great work. I was seeking horde solution for a ling time. However I am facing two problem. 1. I can not view message when I click on message it shows only a blank page. 2. What I have to do to provide user interface for password change?

Regards,
saki

well,

Posté par lwolf le 21/08/2008 22:49
for the password change problem, it is very dependant on the server software and configuration. So i can not help you.

One the view message problem, i can only think of a javascript or referer blocking. But it can also be due to a php bug. Take a look at your web server error log. I'm not of any help, but well, it is also server software dependant.

Good luck

Error msg at

Posté par Tjopot le 09/09/2008 20:52
Got stuck at "Horde configuration: /usr/bin/php /var/www/horde-webmail/scripts/setup.php".

I have already created a 'horde_db' with user 'horde_usr' and password 'horde_pwd'. Running the script I get the following error message at the end of the setup script:
"Warning: array_merge(): Argument #2 is not an array in /var/www/horde-webmail/lib/Horde/Perms/sql.php on line 405

A fatal error has occurred

DB Error: not found

Details have been logged for the administrator."

Any suggestions?
Where is the log placed?

hum, probably a misconfiguration

Posté par lwolf le 10/09/2008 04:47
I'm astonished that you are stuck at setup.php step. It is the only one that is not from be, but from horde developers.
You can find the log horde in /tmp/horde.log by default. Later, this howto move this file to /var/log.

I think you should check you database configuration.

Good luck

User/Pwd credentials at the Start Page?

Posté par Tjopot le 10/09/2008 12:28
started from scratch, coming all the way to the 'Welcome to Horde' login page. Not sure which user/pwd info to enter, I'm not allowed to log in....!

Bad day...

Posté par Tjopot le 10/09/2008 12:46
duh, figured it out. Having a bad day... :-)

Same error

Posté par Carlo le 16/09/2008 16:30
I got the same error msg, even I'm using 'root' as user...
Any suggestion?

use your imap users

Posté par Lone Wolf le 16/09/2008 17:06
The login to use is simply your imap server logins.

Good luck

Error msg at setup.php

Posté par Phatz le 24/11/2008 10:56
Hi guys,

I'm also stuck at the setup.php script with the same error:

"Warning: array_merge(): Argument #2 is not an array in /var/www/horde-webmail/lib/Horde/Perms/sql.php on line 405
A fatal error has occurred
DB Error: not found
Details have been logged for the administrator.

The horde.log is not created and I have no idea what is going on.
I am running it on the latest Ubuntu LTS server and I'm trying to get it to use a mysql database running on my Ubuntu mail server running Postfix and Dovecot.

If anyone has any pointers please please please let me know.

Error msg at setup.php fixed

Posté par wessel le 20/03/2009 11:09
Hi

I downloaded horde 1.2.2 and also had a

"Warning: array_merge(): Argument #2 is not an array in /data/www/intranet/web/horde-webmail-1.2.2/lib/Horde/Perms/sql.php on line 410"

according to php docs: "The behavior of array_merge() was modified in PHP 5. Unlike PHP 4, array_merge() now only accepts parameters of type array. However, you can use typecasting to merge other types. See the example below for details. "

So I casted the second parameter which fixed the problem for me.

Dunno why the $_params['read'] is not an array in my case. Or all the other users without problems using php4?


"Warning: array_merge(): Argument #2 is not an array in

Posté par Stuart le 30/04/2009 14:17
Correct - I took your advice and modified sql.php the following way and it worked(the installation continued):
Modified line 410 to : $params = array_merge((array)$_params, (array)$_params['read']);

Thank you!

Posté par Roberto le 02/10/2008 13:30
Great howto, it helped me a lot.

BTW, you've inspired me to setup my own plone/blog/wordpress site to drop my experience.

Greetings,


html mails not displaying

Posté par hubutz le 12/10/2008 16:20
Hey!

Your tutorial helped me a lot to get horde webmail 1.2 installed, BUT i don't get html mails shown, i can not see there contents. :/
Any idea?

Cheers,
hubutz

html mails

Posté par lwolf le 13/10/2008 03:49
By default, Horde does not display HTML mails inline, in Horde 1.1, this was controlled by this setting in /var/www/horde-webmail/imp/config/mime_drivers.php

mime_drivers -> imp -> html -> 'inline' => true

(aka, add inline = true value in the mime_drivers->imp->html array).

I don't know if the setting is the same for horde 1.2.

Good luck

Awesome

Posté par Agustinho le 06/02/2009 01:51
Thank you so much... I have spent many days on setting up a box with horde+debian and you have ligten the path! :)

But, can you please tell the directions to Outlook in English or Brazilian?

Best Regards!

OpenSSL

Posté par Flo le 26/03/2009 01:35
... regarding the authors comment: I have not understand the goal of this, but if this is of use to you, here is how to enable it.

You need to enable OpenSSL in order to get S/MIME support working within the Horde Groupware. S/MIME signatures are currently the most common way to sign outgoing MS Outlook E-Mails.

Have fun and thanks for this great installation manual for Debian! You can use it also for the current Debian Lenny. In Lenny you can use the precompiled Debian .deb files for pear geoip, fileinfo and idn. There is no longer need to compile that on your own...

-Florian

mille mercy Pierre-Yves

Posté par Uwe le 14/07/2009 21:40
Je tiens à remercier pour vos efforts (excuse pour la mauvaise traduction de Google)

This Howto is the best.

I have some littel Problems.
Does anyone know a good Forum for Horde Support ?

Support ?

Posté par Lone Wolf le 15/07/2009 04:11
Hi,

thank you :).

For support, i don't know of a forum, but there is a irc channel, and a mailing list. More information can be found here :

http://www.horde.org/support.php

Good luck.

Does anyone know, how to setup DIMP als Login Default?

Posté par Andre le 12/03/2010 14:47
Hello,

Does anyone know, how to setup DIMP als Login Default in current Horde Webmail Edition?

Thank you

Andre

DIMP as Login Default

Posté par Cédric le 02/08/2010 16:52
It's probably a little late, but yes !
I've done a fresh install some days ago and have to do the same.

You have to modify the imp/login.php file on line 258 :

Replace :
$view_cookie = isset($_COOKIE['default_imp_view'])
? $_COOKIE['default_imp_view']
: ($browser->isMobile() && isset($apps['mimp']) ? 'mimp' : 'imp');
By :
$view_cookie = isset($_COOKIE['default_imp_view'])
? $_COOKIE['default_imp_view']
: ($browser->isMobile() && isset($apps['mimp']) ? 'mimp' : (isset($apps['dimp']) ? 'dimp' : 'imp'));

Then, few lines lower, find the following code and cut it :
$views[] = array('sel' => $view_cookie == 'imp',
'val' => 'imp', 'name' => _("Traditional"));
Then paste the cut lines between :
if (isset($apps['dimp'])) {
$views[] = array('sel' => $view_cookie == 'dimp',
'val' => 'dimp', 'name' => _("Dynamic"));
}
And :
if (isset($apps['mimp'])) {
$views[] = array('sel' => $view_cookie == 'mimp',
'val' => 'mimp', 'name' => _("Minimalist"));
}
Save and refresh the Login page in your browser. Done !

Hope it can be usefull :-)

Running in 64 bit mode??

Posté par Lars le 05/10/2010 10:52
Hi there
I have used your recipe manny times to setup Horde Groupware, but I need to know if I can use you recipe to setup a 64 bit version? I'm having problems with the underlying Imap server only allowing 2 GB of user data for each user. My plan is to setup a Debian 64 bit with PostFix and Horde GroupWare

Thanx in advance

64bit

Posté par Lone Wolf le 05/10/2010 11:51
I believe the same guide applies. I've written it on a 64bit debian.

Horde on Debian Edge (Ubuntu 10.10)

Posté par Kurt le 16/11/2010 19:59
During the installation process:
And we build and install the PECL extensions :

* fileinfo :
This extension allow to enhance attached files management.

/usr/bin/pecl install fileinfo
/bin/echo "extension=fileinfo.so" | /usr/bin/tee /etc/php5/conf.d/fileinfo.ini

* lzf :
This extension allow to reduce the size of sessions (and so the server memory usage).

/usr/bin/pecl install lzf
/bin/echo "extension=lzf.so" | /usr/bin/tee /etc/php5/conf.d/lzf.ini

I received permission denied when running the following lines:

sudo /bin/echo "extension=fileinfo.so" | /usr/bin/tee /etc/php5/conf.d/fileinfo.ini

sudo /bin/echo "extension=lzf.so" | /usr/bin/tee /etc/php5/conf.d/lzf.ini

How do I correct this?

tee and sudo

Posté par Pierre-Yves Landuré le 17/11/2010 09:30
Hi,

simply use :

/bin/echo "extension=fileinfo.so" | sudo /usr/bin/tee /etc/php5/conf.d/fileinfo.ini
/bin/echo "extension=lzf.so" | sudo /usr/bin/tee /etc/php5/conf.d/lzf.ini

Good luck

DB Problem

Posté par Kurt Mullen le 17/11/2010 16:52
Thanks for that last answer. I see why sudo has to go where it you put it. Still pretty new to linux. When I tried running the setup.php script I ran into some errors. Now I am not able to get to the database. I am getting the following error.

A fatal error has occurred
DB Error: connect failed
Details have been logged for the administrator.

The Mysql database was created "horde", with the user password horde/horde. I am able to log into the horde database using horde/horde.

How do I go about finding out what is causing the problem and correct it?

DB Problem

Posté par Kurt Mullen le 17/11/2010 16:53
Thanks for that last answer. I see why sudo has to go where it you put it. Still pretty new to linux. When I tried running the setup.php script I ran into some errors. Now I am not able to get to the database. I am getting the following error.

A fatal error has occurred
DB Error: connect failed
Details have been logged for the administrator.

The Mysql database was created "horde", with the user password horde/horde. I am able to log into the horde database using horde/horde.

How do I go about finding out what is causing the problem and correct it?

mysql connection

Posté par Pierre-Yves Landuré le 17/11/2010 19:37
I suggest you look at the apache 2 (or lighttpd) error log (in /var/log/apache2 or /var/log/lighttpd). I think the mysql connection error will be found here.

take also a look in horde logs (/var/log/horde.log)

Good luck

results

Posté par Kurt Mullen le 17/11/2010 22:13
This is what I'm finding:

[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Perms/sql.php on line 83
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Perms/sql.php on line 116
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Perms/sql.php on line 153
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Prefs.php on line 847
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/mnemo/lib/api.php on line 312
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/mnemo/lib/api.php on line 406
[Wed Nov 17 16:02:06 2010] [error] [client 192.168.15.230] PHP Warning: fopen(/var/log/horde.log): failed to open stream: Permission denied in /var/www/horde-webmail/pear/php/Log/file.php on line 216


permissions problems

Posté par Pierre-Yves Landuré le 18/11/2010 10:05
Hi,

this commands should solve the last error message and allow horde to update his own log file.

sudo touch /var/log/horde.log
sudo chown www-data:www-data /var/log/horde.log

Good luck

Still have problem

Posté par Kurt le 18/11/2010 16:40
Still getting the following:

A fatal error has occurred
DB Error: connect failed
Details have been logged for the administrator.


[Thu Nov 18 10:37:35 2010] [error] [client 192.168.15.230] File does not exist: /var/www/favicon.ico

where is the database server ?

Posté par Pierre-Yves Landuré le 18/11/2010 17:04
is your mysql server on the same machine / host as the horde install ? check the horde mysql configuration... it may be wrong.

Failed setup.php

Posté par Kurt Mullen le 18/11/2010 20:47
I deleted the horde database and the user horde. Then I went back and ran the setup.php script again.



Writing main configuration file
PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Block/Collection.php on line 146

Deprecated: Assigning the return value of new by reference is deprecated in /var/www/horde-webmail/lib/Horde/Block/Collection.php on line 146

A fatal error has occurred

DB Error: connect failed

Details have been logged for the administrator.

database configuration problem

Posté par Pierre-Yves Landuré le 19/11/2010 09:07
You have a error in your database configuration. I don't know for sure the source of the error, but the result is that horde can not connect to the database.

i hope you'll find the error soon :)

Ubuntu 10.10

Posté par Jorg le 01/12/2010 15:02
Thanks for this great how-to.

I just want to confirm it also installs smoothly on Ubuntu 10.10.

Ubuntu 10.10 PHP Deprecated errors

Posté par Adrie le 30/12/2010 15:42
A nice hand-out. specially for a new install.
Horde works fine, but it keeps filling my log files with - PHP Deprecated errors - like:

[Thu Dec 30 15:13:43 2010] [error] [client 1.2.3.4] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/webmail/lib/Horde/MIME/Message.php on line 335, referer: http://amstelveen.bookum.no-ip.com/webmail/dimp/
[Thu Dec 30 15:13:43 2010] [error] [client 1.2.3.4] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/webmail/lib/Horde/MIME.php on line 279, referer: http://amstelveen.bookum.no-ip.com/webmail/dimp/
[Thu Dec 30 15:13:43 2010] [error] [client 1.2.3.4] PHP Deprecated: Assigning the return value of new by reference is deprecated in /var/www/webmail/lib/Horde/MIME/Headers.php on line 501, referer: http://amstelveen.bookum.no-ip.com/webmail/dimp/

PHP5 5.3.3
MySQL 5.1.49-1ubuntu8.1

Look on several forums on the web to sort the issue.
changing &new -> new gave an MDB2 error and unpredictable application errors
added 'date.zone = Europe/Amsterdam in php.ini' in php.ini -> still same problem
declaration of 'error_reporting = E_ALL & ~E_DEPRECATED' in php.ini -> does not suppress Deprecated errors in /var/log/apache2/error.log

I also get error mails with same errors from the CRON job '/usr/bin/php /var/www/webmail/scripts/alarms.php'

Any suggestions what to do?

BTW: /usr/bin/pecl install fileinfo is not required with PHP5 5.3.3 anymore

Thnanks in advance
Adrie

return value by reference

Posté par Lone Wolf le 31/12/2010 09:18
The notice "Assigning the return value of new by reference is deprecated" is due to the return of a value (not a var) when a function is declared by reference.

return True -> warning

$return_value = True; return $return_value; -> OK

Perhaps : error_reporting = E_ALL & ~E_NOTICE will do the trick.

You can also simply ignore the error.

Good luck.

re: Return value by reference

Posté par Adrie le 01/01/2011 17:57
Thanks for the fast response Lone.

I tested error_reporting = E_ALL & ~E_NOTICE but unfortunately this does not stop the warnings.
All other things are running fine, so I leave it for the moment and ignore as you suggest the errors.

One other thing I discovered is that the Virtual Host in Apache must be configured properly to protect the Webmail subdirectory from being browsed from the outside world.
I added the following to the VirtualHost section:
<VirtualHost *:80>
<Directory /var/www/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order deny,allow
Deny from all
</Directory>
<Directory /var/www/webmail>
Options Indexes FollowSymLinks MultiViews
AllowOverride FileInfo Options
Order deny,allow
Allow from all
</Directory>
</VirtualHost>


Nothing after login

Posté par mlorente le 23/06/2011 13:06
Hi folks,

something strange is happening on my installation, and really do not know where to look. I have a server with postfix + courier-IMAP + apache + squirrelmail. I decided to change squirrelmail for horde, but trying to leave the rest of the system unchanged. After following this great horde install manual and configure /var/www/webmail/imp/config/servers.php to use my imap server, I can not login. Authentication seems to work, because if I put a user or password incorrect,the horde website tells me so, when they are correct, mail.log indicate that it is, but webmail asks for them again

Any idea?

Thnaks in advance

Gmail as IMAP server for horde

Posté par neo le 17/08/2011 08:07
Thank you for your article.
I installed horde successfully.
But I have problem with first time login. I've tried to use gmail as imap server, but with no success.
Is it possible configure horde to use gmail as imap server?
If yes, what should I do to do that?
Thanks in advance.

can you update the steps for the latest horde and ubuntu versions?

Posté par mv288 le 11/12/2011 11:19
Are you available to update the steps for the latest horde and ubuntu versions as a paid engagement?. Let me know I will reply with an email.

Mission

Posté par Lone Wolf le 11/12/2011 18:43
Yes i'm interested writing a updated install guide for you.

You can contact me at <pierre (dash) yves (dot) landure (at) biapy (dot) fr> or by using this site contact form.

Thank you
Pierre-Yves Landuré
aka. Lone Wolf

BlogBang
Navigation
 

Réalisé avec Plone

Ce site respecte les normes suivantes :

Wikio