Install Horde Groupware Webmail Edition on Debian 4.0 Etch
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.phpNow, 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 to the Horde developers.
- Thanks to the writers of Installing Horde Groupware Webmail Edition.
i do use dimp
and thanx for your comment, i was desesperately waiting for a good feed back on this article :D
great job!
Great job .. some 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
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
Thanks, and one suggestion
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
configuring group shares
Great guide
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
Regards,
saki
well,
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
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
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?
Same error
Any suggestion?
use your imap users
Good luck
Error msg at setup.php
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
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
Modified line 410 to : $params = array_merge((array)$_params, (array)$_params['read']);
Thank you!
BTW, you've inspired me to setup my own plone/blog/wordpress site to drop my experience.
Greetings,
html mails not displaying
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
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
But, can you please tell the directions to Outlook in English or Brazilian?
Best Regards!
OpenSSL
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
This Howto is the best.
I have some littel Problems.
Does anyone know a good Forum for Horde Support ?
Support ?
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?
Does anyone know, how to setup DIMP als Login Default in current Horde Webmail Edition?
Thank you
Andre
DIMP as Login Default
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??
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
Horde on Debian Edge (Ubuntu 10.10)
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
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
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
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
take also a look in horde logs (/var/log/horde.log)
Good luck
results
[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
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
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 ?
Failed setup.php
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
i hope you'll find the error soon :)
Ubuntu 10.10
I just want to confirm it also installs smoothly on Ubuntu 10.10.
Ubuntu 10.10 PHP Deprecated errors
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
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
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
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
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?
Mission
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
Thanks!