]> git.donarmstrong.com Git - roundcube.git/blob - INSTALL
Merge commit 'debian/0.1_rc1_dfsg-1' into debian
[roundcube.git] / INSTALL
1
2 REQUIREMENTS
3 ============
4
5 * The Apache Webserver
6 * .htaccess support allowing overrides for DirectoryIndex
7 * PHP Version 4.3.1 or greater
8 * PCRE (perl compatible regular expression) installed with PHP
9 * php.ini options:
10    - error_reporting E_ALL & ~E_NOTICE (or lower)
11    - file_uploads on (for attachment upload features)
12    - memory_limit (increase as suitable to support large attachments)
13 * A MySQL or PostgreSQL database engine or the SQLite extension for PHP
14 * A database with permission to create tables
15
16
17 INSTALLATION
18 ============
19
20 1. Decompress and put this folder somewhere inside your document root
21 2. Make sure that the following directories (and the files within)
22    are writable by the webserver
23    - /temp
24    - /logs
25 3. Create a new database and a database user for RoundCube (see DATABASE SETUP)
26 4. Create database tables using the queries in file 'SQL/*.initial.sql'
27    (* stands for your database type)
28 5. Rename the files config/*.inc.php.dist to config/*.inc.php
29 6. Modify the files in config/* to suit your local environment
30 7. Done!
31
32
33 DATABASE SETUP
34 ==============
35
36 * MySQL 4.0.x
37 -------------
38 Setting up the mysql database can be done by creating an empty database,
39 importing the table layout and granting the proper permissions to the
40 roundcube user. Here is an example of that procedure:
41
42 # mysql
43 > CREATE DATABASE roundcubemail;
44 > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost
45     IDENTIFIED BY 'password';
46 > quit
47 # mysql roundcubemail < SQL/mysql.initial.sql
48
49
50 * MySQL 4.1.x/5.x
51 -----------------
52 For MySQL version 4.1 and up, it's recommended to create the database for
53 RoundCube with utf-8 charset. Here's an example of the init procedure:
54
55 # mysql
56 > CREATE DATABASE roundcubemail DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
57 > GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost
58     IDENTIFIED BY 'password';
59 > quit
60
61 # mysql roundcubemail < SQL/mysql5.initial.sql
62
63 Note: 'password' is the master password for the roundcube user. It is strongly
64 recommended you replace this with a more secure password. Please keep in
65 mind: You need to specify this password later in 'config/db.inc.php'.
66
67
68 * SQLite
69 --------
70 Sqlite requires specifically php5 (sqlite in php4 currently doesn't
71 work with roundcube), and you need sqlite 2 (preferably 2.8) to setup
72 the sqlite db (sqlite 3.x also doesn't work at the moment). Here is
73 an example how you can setup the sqlite.db for roundcube:
74
75 # sqlite -init SQL/sqlite.initial.sql sqlite.db
76
77 Make sure your configuration points to the sqlite.db file and that the
78 webserver can write to the file.
79
80
81 * PostgreSQL
82 ------------
83 To use RoundCube with PostgreSQL support you have to follow the next
84 simple steps, which have to be done with the postgres system user (or
85 which ever is the database superuser):
86
87 $ createuser roundcubemail
88 $ createdb -O roundcubemail roundcubemail
89 $ psql roundcubemail
90
91 roundcubemail =# ALTER USER roundcube WITH PASSWORD 'the_new_password';
92 roundcubemail =# \c - roundcubemail
93 roundcubemail => \i SQL/postgres.initial.sql
94
95 All this has been tested with PostgreSQL 8.0.x and 7.4.x. Older
96 versions don't have a -O option for the createdb, so if you are
97 using that version you'll have to change ownership of the DB later.
98
99
100 CONFIGURATION
101 =============
102
103 Change the files in config/* according your to environment and your needs.
104 Details about the config parameters can be found in the config files
105 or in the wiki: http://trac.roundcube.net/trac.cgi/wiki/Howto_Config
106
107
108 UPGRADING
109 =========
110
111 If you already have a previous version of RoundCube installed,
112 please refer to the instructions in UPGRADING guide.
113
114