From LedHed's Wiki
Jump to: navigation, search

NOTE: This HowTo assumes you are using a RedHat or Fedora based distro, but most of this info can be applied to any Unix based Operating System.



Download

  • Download the latest version of Roundcube

wget http://easynews.dl.sourceforge.net/sourceforge/roundcubemail/roundcubemail-0.1beta.tar.gz

If the Above link is broken or out of date, get the latest version Here


UnTar

tar -xvzf roundcubemail-0.1beta.tar.gz


Move

mv roundcubemail-0.1beta /var/www/roundcube

Read the Documentation

cd /var/www/roundcube less README (press q to quit)

less INSTALL (press q to quit)

Change Ownership & Premissions

chown -R root.root roundcube/
cd roundbube/
chmod 755 log/ temp/

Database Setup

(This Assumes you already have MySQL installed)


  • Creating the RoundCube Database

mysql -u root -p (When prompted for a password enter the root password)

mysql> CREATE DATABASE `roundcube` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;


  • Create RoundCube User and Grant Privileges

mysql> GRANT ALL PRIVILEGES ON roundcube.* TO roundcube@localhost IDENTIFIED BY 'Your-Password-Here';
(where 'Your-Password-Here' is the password you want for the roundcube user)


  • Exit MySQL

mysql> quit


  • Import RoundCube Database Tables

mysql -u root -p roundcube < /var/www/roundcube/SQL/mysql.initial.sql
(When prompted for a password enter the root password)


Initial Configuration

  • Copy the sample configuration file

cd config/ cp db.inc.php.dist db.inc.php cp main.inc.php.dist main.inc.php


  • Configure Database Settings

vi db.inc.php

change this line: $rcmail_config['db_dsnw'] = 'mysql://roundcube:pass@localhost/roundcubemail';

to

$rcmail_config['db_dsnw'] = 'mysql://roundcube:Your-Password-Here@localhost/roundcube';

Note: I created the database as 'roundcube' but the sample database config calls it 'roundcubemail' change it where necessary


  • Configure Main Settings

(NOTE: these are the settings I use, they may differ depending on your particular mail server configuration)

vi main.inc.php

$rcmail_config['enable_caching'] = FALSE;
$rcmail_config['message_cache_lifetime'] = '1h';
$rcmail_config['default_host'] = 'ssl://localhost:993';
$rcmail_config['default_port'] = 993;
$rcmail_config['virtuser_file'] = 'mailbox';
$rcmail_config['virtuser_query'] = 'SELECT username FROM mailbox WHERE username = "%u"';
$rcmail_config['smtp_user'] = '%u';
$rcmail_config['smtp_pass'] = '%p';
$rcmail_config['smtp_auth_type'] = 'PLAIN';

  • Optional

$rcmail_config['pagesize'] = 100;
$rcmail_config['timezone'] = 4;


Apache Configuration

(For more info on Apache go here)


  • Edit/Create your VHost file

vi /etc/httpd/conf.d/roundcube.mydomain.conf


### Virtual Host roundcube.mydomain.com ###

<VirtualHost *:80>

   ServerName roundcube.mydomain.com

   RewriteEngine on
   RewriteCond %{HTTP_HOST} ^roundcube\.mydomain\.com
   RewriteRule ^/$ https://roundcube.mydomain.com [R,L]

</VirtualHost>

### SSL Virtual Host roundcube.mydomain.com ###

<VirtualHost *:443>

   ServerName roundcube.mydomain.com
   DocumentRoot /var/www/roundcube/
   DirectoryIndex index.php

   SSLEngine on
   SSLCertificateFile /etc/pki/tls/certs/server.crt
   SSLCertificateKeyFile /etc/pki/tls/certs/server.key

   <Directory "/var/www/roundcube/">

   SSLRequireSSL

   AllowOverride all
   DirectoryIndex index.php
   Allow from all
   Order deny,allow

</Directory>

</VirtualHost>



Trouble Shooting

Getting a blank page when you try to connect?
Visit: http://roundcubeforum.net/index.php?topic=176.0

Make sure all your database settings are correct. (Database Name, Database Username, Password, SELECT Statements, Etc...)