Admins/Install Howto Ubuntu 8.04 LTS
This is a step-by-step howto to install Tine 2.0 for Ubuntu 8.04 LTS (aka Hardy Heron).
As php often has some security issues I decided to use apache2-mpm-itk. In this environment the apache processes handling a special vhost runs as specified user. You can also use a different apache2 server like apache2-mpm-prefork.
Note: For the following instructions I assume that you install tine on a vhost called "tine20".
Contents |
Prepare mysql
On your mysql system execute the following (with your own secret password):
# mysql mysql> CREATE DATABASE tine20; mysql> GRANT ALL PRIVILEGES ON tine20.* TO 'tine20'@'localhost' IDENTIFIED BY 'XXXXXXXX';
Prepare Apache
Setup user tine20
adduser tine20 mkdir -p /home/tine20/www/htdocs mkdir -p /home/tine20/www/logs mkdir -p /home/tine20/www/sessions touch /home/tine20/www/logs/access.log touch /home/tine20/www/logs/error.log touch /home/tine20/www/logs/tine20.log chown -R tine20.tine20 /home/tine20/www
If NOT running apache2-mpm-itk must give write permissions to group www-data for the file /home/tine20/www/logs/tine20.log (this is not tested. You will have to find out on your own and extend this installation howto):
chown .www-data /home/tine20/www/logs/tine20.log chmod g+w /home/tine20/www/logs/tine20.log
Install necessary packages
apt-get install apache2-mpm-itk libapache2-mod-php5 php5-mysql php5-gd php5-mcrypt
setup virtual host
As I said above I want to benefit from the user separation delivered by apache2-mpm-itk. So I install tine20 as a virtual host on apache. Create a file /etc/apache2/sites-available/tine20 with the following content:
<VirtualHost *>
ServerAdmin webmaster@tine20
ServerName tine20
Alias /Microsoft-Server-ActiveSync /home/tine20/www/htdocs/index.php
DocumentRoot /home/tine20/www/htdocs/
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/tine20/www/htdocs/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
# tine needs some memory
php_admin_value memory_limit 64M
# tine insists on this
php_admin_flag magic_quotes_gpc off
</Directory>
ErrorLog /home/tine20/www/logs/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /home/tine20/www/logs/access.log combined
ServerSignature On
<IfModule mpm_itk_module>
AssignUserId tine20 tine20
</IfModule>
</VirtualHost>
To enable this configuration execute:
a2ensite tine20 /etc/init.d/apache2 reload
Install Tine20
su - tine20 cd www/htdocs tar xjf ~/tine20-allinone-2009-02-2.tar.bz2 tar xjf ~/tine20-activesync-2009-02-2.tar.bz2
Create a file config.inc.php with the following content:
<?php
return array(
'database' => array(
'host' => 'localhost', // change this if your mysql is running on a remote host
'dbname' => 'tine20',
'username' => 'tine20',
'password' => 'xxxxxx, // change this!
'adapter' => 'pdo_mysql',
'tableprefix' => 'tine20_'
),
'logger' => array(
'filename' => '/home/tine20/www/logs/tine20.log',
'priority' => '3'
),
'session.save_path' => '/home/tine20/www/sessions',
);
Now we can follow the generic howto again: Install Howto step 4



