thomascube
2008-02-18 83ce4bb0bced80e78592557702da2a3f936bacba
commit | author | age
a89845 1 INTRODUCTION
T 2 ============
3
4 This file describes the basic steps to install RoundCube Webmail on your
5 web server. For additional information, please also consult the project's
83ce4b 6 wiki page at http://trac.roundcube.net/wiki
T 7
4e17e6 8
535da2 9 REQUIREMENTS
T 10 ============
11
1fb2c8 12 * The Apache or Lighttpd Webserver
535da2 13 * .htaccess support allowing overrides for DirectoryIndex
1fb2c8 14 * PHP Version 4.3.1 or greater including
T 15    - PCRE (perl compatible regular expression)
16    - libiconv (recommended)
17    - mbstring (optional)
535da2 18 * php.ini options:
T 19    - error_reporting E_ALL & ~E_NOTICE (or lower)
20    - file_uploads on (for attachment upload features)
25d8ba 21    - memory_limit (increase as suitable to support large attachments)
581213 22    - session.auto_start needs to be off/0
e9ac14 23 * PHP compiled with Open SSL to connect to IMAPS and to use the spell checker
535da2 24 * A MySQL or PostgreSQL database engine or the SQLite extension for PHP
1fb2c8 25 * One of the above databases with permission to create tables
T 26 * An SMTP server or PHP configured for mail delivery
535da2 27
T 28
4e17e6 29 INSTALLATION
T 30 ============
31
32 1. Decompress and put this folder somewhere inside your document root
10a699 33 2. Make sure that the following directories (and the files within)
T 34    are writable by the webserver
4e17e6 35    - /temp
T 36    - /logs
10a699 37 3. Create a new database and a database user for RoundCube (see DATABASE SETUP)
42b113 38 4. Create database tables using the queries in file 'SQL/*.initial.sql'
10a699 39    (* stands for your database type)
42b113 40 5. Rename the files config/*.inc.php.dist to config/*.inc.php
T 41 6. Modify the files in config/* to suit your local environment
42 7. Done!
43
44
10a699 45 DATABASE SETUP
T 46 ==============
47
aade7b 48 * MySQL 4.0.x
T 49 -------------
10a699 50 Setting up the mysql database can be done by creating an empty database,
T 51 importing the table layout and granting the proper permissions to the
52 roundcube user. Here is an example of that procedure:
53
54 # mysql
f7bfec 55 > CREATE DATABASE roundcubemail;
10a699 56 > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost
6ae6e4 57     IDENTIFIED BY 'password';
10a699 58 > quit
T 59 # mysql roundcubemail < SQL/mysql.initial.sql
535da2 60
aade7b 61
T 62 * MySQL 4.1.x/5.x
63 -----------------
535da2 64 For MySQL version 4.1 and up, it's recommended to create the database for
aade7b 65 RoundCube with utf-8 charset. Here's an example of the init procedure:
T 66
67 # mysql
f7bfec 68 > CREATE DATABASE roundcubemail DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
aade7b 69 > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost
6ae6e4 70     IDENTIFIED BY 'password';
aade7b 71 > quit
T 72
73 # mysql roundcubemail < SQL/mysql5.initial.sql
10a699 74
3cf664 75 Note: 'password' is the master password for the roundcube user. It is strongly
T 76 recommended you replace this with a more secure password. Please keep in
77 mind: You need to specify this password later in 'config/db.inc.php'.
78
1cded8 79
10a699 80 * SQLite
T 81 --------
82 Sqlite requires specifically php5 (sqlite in php4 currently doesn't
83 work with roundcube), and you need sqlite 2 (preferably 2.8) to setup
84 the sqlite db (sqlite 3.x also doesn't work at the moment). Here is
85 an example how you can setup the sqlite.db for roundcube:
86
87 # sqlite -init SQL/sqlite.initial.sql sqlite.db
88
89 Make sure your configuration points to the sqlite.db file and that the
83ce4b 90 webserver can write to the file and the directory containing the file.
10a699 91
T 92
1cded8 93 * PostgreSQL
T 94 ------------
a89845 95 To use RoundCube with PostgreSQL support you have to follow these
T 96 simple steps, which have to be done as the postgres system user (or
1cded8 97 which ever is the database superuser):
T 98
a89845 99 $ createuser roundcube
T 100 $ createdb -O roundcube roundcubemail
1cded8 101 $ psql roundcubemail
T 102
103 roundcubemail =# ALTER USER roundcube WITH PASSWORD 'the_new_password';
a89845 104 roundcubemail =# \c - roundcube
1cded8 105 roundcubemail => \i SQL/postgres.initial.sql
T 106
a89845 107 All this has been tested with PostgreSQL 8.x and 7.4.x. Older
1cded8 108 versions don't have a -O option for the createdb, so if you are
T 109 using that version you'll have to change ownership of the DB later.
110
111
535da2 112 CONFIGURATION
T 113 =============
114
a89845 115 First of all, rename the files config/*.inc.php.dist to config/*.inc.php.
T 116 You can then change these files according to your environment and your needs.
117 Details about the config parameters can be found in the config files.
535da2 118
4b9efb 119 You can also modify the default .htaccess file. This is necessary to
S 120 increase the allowed size of file attachments, for example:
121     php_value       upload_max_filesize     2M
535da2 122
83ce4b 123
42b113 124 UPGRADING
T 125 =========
6ae6e4 126
42b113 127 If you already have a previous version of RoundCube installed,
T 128 please refer to the instructions in UPGRADING guide.
4e17e6 129
T 130