Installazione di Horde tramite sorgenti in Debian

From RVM Wiki
Revision as of 18:49, 29 October 2013 by Gabriele.vivinetto (talk | contribs)
Jump to navigation Jump to search

Installazione

  • Valido per Horde 5 e Debian 6
  • Prerequisiti
sudo apt-get install apache2 mysql-server postfix phpmyadmin dovecot-imapd 
  • Configurare postfix e dovecot, perchè l'autenticazione di Horde avviene sulla casella imap.
  • Creare una casella imap che sarà usata per l'amministrazione
  • Librerire per horde:
sudo apt-get install libapache2-mod-php5 php-pear php5-dev imagemagick aspell-it libmagic-dev make
  • Creare l'ambiente pear solo per horde:
sudo mkdir /var/www/horde
sudo pear config-create /var/www/horde/ /var/www/horde/pear.conf
sudo pear -c /var/www/horde/pear.conf install pear
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf channel-discover pear.horde.org
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf install horde/horde_role
  • Lanciare script config:
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf run-scripts horde/Horde_Role
  • Indicare:
/var/www/horde
  • Procedere:
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf config-set preferred_state alpha
  • Scaricare (attendere la partenza anche per 10 minti):
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf install -a -B horde/webmail
  • Installare il modulo per il cambio password:
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf install -a -B horde/passwd
  • Inizializzare l'eventuale repository git
cd /var/www/horse
sudo git init
  • Impostare le esclusioni:
sudoedit .gitignore
pear/cache/
pear/download/
pear/temp/
  • Fare commit
sudo git add .
sudo git commit -a -m "* Initial import"
  • Modificare .htaccess:
sudoedit /var/www/horde/.htaccess 
# IMPORTANT: DO NOT EDIT THIS FILE!
# It will be overwritten with any future upgrade.

allow from all

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteRule .* - [env=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
    RewriteCond   %{REQUEST_FILENAME}  !-d
    RewriteCond   %{REQUEST_FILENAME}  !-f
    RewriteRule ^(.*)$ rampage.php [QSA,L]
</IfModule>

# CUSTOM VALUES
php_value include_path /var/www/horde/pear/php
php_value session.gc_divisor 10000
php_value session.gc_probability 1
SetEnv PHP_PEAR_SYSCONF_DIR /var/www/horde
#php_value memory_limit 256M


  • Creare user e db horde con phpmyadmin o a amano:
CREATE USER 'horde'@'localhost' IDENTIFIED BY '***';

GRANT USAGE ON * . * TO 'horde'@'localhost' IDENTIFIED BY '***' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;

CREATE DATABASE IF NOT EXISTS `horde` ;

GRANT ALL PRIVILEGES ON `horde` . * TO 'horde'@'localhost';
  • Lanciare install script:
sudo PHP_PEAR_SYSCONF_DIR=/var/www/horde php -d include_path=/var/www/horde/pear/php /var/www/horde/pear/webmail-install
What database backend should we use? 
Type your choice []: mysql

Username to connect to the database as* [] horde

Password to connect with ***

How should we connect to the database? 
Type your choice [unix]: tcp

Database server/host* [] localhost

Port the DB is running on, if non-standard [3306] 

Database name to use* [] horde

Internally used charset* [utf-8] 

Use SSL to connect to the server? 
Type your choice [0]: 

Certification Authority to use for SSL connections [] 

Split reads to a different server? 
Type your choice [false]: 

Writing main configuration file... done.

Creating and updating database tables...
done.

Configuring administrator settings

Specify an existing mail user who you want to give administrator
permissions (optional): XYZ@EXAMPLE.COM

Writing main configuration file... done.

Thank you for using Horde Groupware Webmail Edition!
  • Se non lo si è dichiarato prima, definire l'indirizzo email della casella che avrà accesso al menu di Amministrazione
sudoedit /var/www/horde/config/conf.php
$conf['auth']['admins'] = array('address@example.com'); 
  • Impostare le permission temporaneamente:
sudo chmod -R u=rwX,g=rwX,o=rwX /var/www/horde
  • Attivare l'interpretazione del file .htaccess e definire l'alias per activesync:
sudoedit /etc/apache2/conf.d/horde.conf
 <Directory /var/www/horde>
     AllowOverride all
 </Directory>

 Alias /Microsoft-Server-ActiveSync /var/www/horde/rpc.php
  • Generare i locales per avere le traduzioni
sudo dpkg-reconfigure locales
  • Riavviare apache2
sudo invoke-rc.d apache2 reload
'maildomain' => 'example.com',
  • Una volta salvata la configurazione, risistemare le permission:
sudo chmod -R u=rwX,g=rX,o=rX /var/www/horde
sudo chown -R :www-data /var/www/horde/config/
sudo chmod -R u=rwX,g=rwX,o=rX /var/www/horde/config/


Riferimenti

Upgrade

  • Fare backup files e database
  • Lanciare upgrade:
 sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf upgrade -a -B -c horde
  • Se non va, disinstallare modulo passwd e poi rilanciare upgrade
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf uninstall horde/passwd
  • Se upgrade non va a buon fine, forzarlo di nuovo:
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf upgrade -f -c horde
  • Lanciare script:
sudo /var/www/horde/pear/pear -c /var/www/horde/pear.conf run-scripts horde/Horde_Role
  • Risistemare .htaccess
sudoedit webmail/.htaccess 
...
php_value include_path /var/www/horde/pear/php
SetEnv PHP_PEAR_SYSCONF_DIR /var/www/horde
...
  • Loggarsi come utente admin, e dalla config,
update all db schema
update all configurations
  • Se c'è qualche errore, guardare i log di apache per errori e 404 (file mancanti, tipo .js)

Riferimenti