roundcube install / upgrade

最後更新: 2018-12-21

目錄

 


Install

 

Debian6: 只能安 roundcube 7.3

原因:

以下 pecl 安裝唔到

  • Net_SMTP
  • Net_IDNA2
  • Mail_mime

# C7

yum install php-pear-Auth-SASL php-pear-Mail-Mime php-pear-Net-SMTP php-pear-Net-IDNA2

 


Troubleshoot

 

在 Debian 與到 Error

[31-May-2012 09:28:30] MDB2 Error: not found (-4): unable to find package 'MDB2_Driver_mysql' file 'MDB2/Driver/mysql.php'

解決:

pear install MDB2_Driver_mysql

 


Centos6 安裝

 

準備:

php extension:

php-intl

安裝:

把最新的 tar.gz 放到 /usr/share

soft link 它到 roundcubemail

設定目錄 permission:

cd roundcubemail
chown apache. temp logs
chmod 770 temp logs

http://xxx/installer 建立設定檔

upload db.inc.php main.inc.php 到 config 目錄

設定目錄 permission

cd config
chmod 640 *
chgrp apache *

回到 http://xxx/installer 測試

測試成功後, 把 installer 的 permission 改成 000

cd ..

chmod 000 installer

 

 


Apache 設定

 

# Apache 2.4

<Directory ${WebmailRoot}>
        Require ip 127.0.0.1
        Require all granted
        # php80
        <FilesMatch ".+\.php$">
                SetHandler application/x-httpd-php
                SetHandler "proxy:fcgi://127.0.0.1:9080"
        </FilesMatch>
        Options -Indexes
        <FilesMatch "(config.inc.php|composer.*|\.bak)">
                Require all denied
        </FilesMatch>
</Directory>
<Directory "${WebmailRoot}/bin">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/config">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/installer">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/logs">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/temp">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/SQL">
    Require all denied
</Directory>
<Directory "${WebmailRoot}/vendor">
    Require all denied
</Directory>

# Apache 2.2

roundcubemail.conf

Alias /mail "/var/www/roundcubemail/"
Alias /webmail "/var/www/roundcubemail/"

<Directory "/var/www/roundcubemail/">
    Order allow,deny
    Allow from all
    Options -Indexes
</Directory>

<Directory "/var/www/roundcubemail/config">
    Deny from all
</Directory>
<Directory "/var/www/roundcubemail/temp">
    Deny from all
</Directory>
<Directory "/var/www/roundcubemail/logs">
    Deny from all
</Directory>

 


Nginx 設定

 

# ACL
location ~ ^/mail/(bin|config|installer|logs|SQL|temp|vendor)($|/.*) { deny all; }
location ~ ^/mail/(CHANGELOG|composer.json|INSTALL|jsdeps.json|LICENSE|README|UPGRADING)($|.*) { deny all; }
location ~ ^/mail/plugins/.*/config.inc.php.* { deny all; }
location ~ ^/mail/plugins/enigma/home($|/.*) { deny all; }

# 用戶可以鍵入小尾的 "/"
location = /mail {
    return 301 /mail/;
}

# 執行 php
location ~ ^/mail/(.*\.php)$ {
    include /etc/nginx/templates/hsts.tmpl;
    include /etc/nginx/templates/fastcgi_php.tmpl;
    fastcgi_param SCRIPT_FILENAME /opt/www/roundcubemail/$1;
}

# Folder map 到其他地方, 而不是 "root path_to_root;" 入面
location ~ ^/mail/(.*) {
    alias /opt/www/roundcubemail/$1;
    index index.php;
}

 


Upgrade (0.9.5 up to 1.0.3)

 

Step1: 升級 DB

  • backup 原本的 DB 資料 ( mysqldump -u roundcube roundcube -p > backup.sql )
  • 更新 DB schema

在 /var/www/roundcubemail-1.0.3/SQL/mysql 內有

2011121400.sql -- Updates from version 0.7
2012080700.sql
2013011000.sql
.........................

Step2: Replace the configuration defaults files:

   - config/defaults.inc.php
   - config/mimetypes.php

   chown www-data config

Step3: 更新 soft link

cd /usr/share

ls -n /usr/share/roundcubemail-0.9.5-dep roundcubemail

Step4: http://xxx/webmail/installer

RCUBE_CONFIG_DIR/main.inc.php

$rcube_config['enable_installer'] = true;
  • 建立 config.inc.php
  • 把新的 config.inc.php 放到 config/config.inc.php

整過個程:

  1. Check environment
  2. Create config
  3. Check config file
  4. Check DB config

 


Version(roundcube & php)

 

1.4.9

支援手機界面

0.9.5-dep

PHP Version 5.2.1

.htaccess support

PEAR packages

    Net_SMTP:  NOT OK(Failed to load Net/SMTP.php; See http://pear.php.net/package/Net_SMTP)       <--  pear install Net_SMTP
    Net_IDNA2:  NOT OK(Failed to load Net/IDNA2.php; See http://pear.php.net/package/Net_IDNA2)
    Mail_mime:  NOT OK(Failed to load Mail/mime.php; See http://pear.php.net/package/Mail_mime)

0.7.4-dep

PHP Version 5.2.1

0.5.4-dep

PHP Version 5.2.1
 


 

Creative Commons license icon Creative Commons license icon