There is the suggestion on the page http://trac.roundcube.net/wiki/Howto_Config/Performance to use a caching IMAP proxy. This will cache the connections to the IMAP server for each user, so that not every click in Roundcube on a message leads to the creation of a new connection.
I found these alternatives:
- Cyrus IMAP Murder: http://www.cyrusimap.org/mediawiki/index.php/Cyrus_Murder
- Nginx IMAP Proxy: http://wiki.nginx.org
- Perdition: http://horms.net/projects/perdition/
- Squirrelmail’s IMAP Proxy: http://www.imapproxy.org/
I had a closer look at Nginx IMAP Proxy and Squirrelmail’s IMAP Proxy.
Squirrelmail’s IMAPProxy
This is actually the easiest solution, at least compared to Nginx IMAP Proxy.
Install from EPEL with: yum install up-imapproxy
I have changed the following values in /etc/imapproxy.conf
:
server_hostname localhost listen_port 8143 listen_address 127.0.0.1 server_port 143 force_tls yes |
To install the service:
service imapproxy start chkconfig imapproxy on |
Roundcube configuration
You need to change the port that Roundcube connects to, instead of port 143 now use 8143 where your Squirrelmail’s IMAP Proxy is running.
In file /etc/roundcubemail/config.inc.php
:
$config['default_port'] = 8143;
I have added the initIMAPProxy.sh script to my TBits scripts: initIMAPProxy.sh
Nginx
Since the configuration of the Nginx IMAP Proxy is more complicated, I have created a separate post for that: Kolab/Roundcube with Nginx IMAP Proxy on CentOS6