2010/04/28

[ LOS ] Install eGroupware On CentOS Linux

這是在 CentOS 5.4 中安裝 eGroupware-1.6.003-2 的過程同時修改甘特圖中文亂碼問題,做個紀錄方便以後有用到可參考。

# /etc/rc.d/init.d/sendmail stop    # 關閉原本的MTA
正在關閉 sm-client:                                        [  確定  ]
正在關閉 sendmail:                                         [  確定  ]

# yum -y install postfix dovecot   # 安裝25port及143port的 e-mail 服務

# vi /etc/postfix/main.cf    # 設定 postfix 主設定檔
myhostname = mail.ntut.idv.tw
myorigin = $myhostname
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain, localhost, ntut.idv.tw
mynetworks = 127.0.0.0/8, 10.88.88.0/24
home_mailbox = Maildir/

# /etc/init.d/postfix start   # 啟動 postfix
正在啟動 postfix:                                          [  確定  ]

# alternatives --config mta    # 修改主要 MTA
有 2 程式提供 'mta'。

  選擇        指令
-----------------------------------------------
*+ 1           /usr/sbin/sendmail.sendmail
   2           /usr/sbin/sendmail.postfix

請輸入以保留目前的選擇[+],或輸入選擇號碼:2

# vi /etc/dovecot.conf    # 開啟 imap 及 pop3
protocols = imap pop3
mail_location = maildir:~/Maildir

# chkconfig postfix on   # 設定開機啟動 postfix
# chkconfig dovecot on    # 設定開機啟動 dovecot
# /etc/init.d/dovecot start  # 手動啟動 dovecot
正在啟動 Dovecot Imap:                                     [  確定  ]

# yum -y install httpd mysql-server php php-mysql php-mbstring php-imap php-gd php-pear cron   # 安裝相關軟體

# /etc/init.d/mysqld start   # 啟動 mysql-server
正在啟動 httpd:                                            [  確定  ]

# mysql -p   # 建立 mysql DB 和 User
mysql> CREATE DATABASE egroupware;
Query OK, 1 row affected (0.00 sec)
mysql> GRANT ALL ON egroupware.* TO egroupware@localhost IDENTIFIED BY 'Password';
Query OK, 0 rows affected (0.01 sec)
mysql> exit

# /etc/init.d/httpd start    # 啟動 apache
正在啟動 httpd:                                            [  確定  ]

# chkconfig httpd on   # 設定開機自動啟動 httpd
# chkconfig mysqld on    # 設定開機自動啟動 mysql

# cd /var/www/html/   # 切換目錄
# wget http://sourceforge.net/projects/egroupware/files/egroupware/eGroupware-1.6.003-2/eGroupware-1.6.003-2.tar.gz/download
# wget http://sourceforge.net/projects/egroupware/files/egroupware/eGroupware-1.6.003-2/eGroupware-egw-pear-1.6.003-2.tar.gz/download   # 這個套件是FelaMiMail要用的
# tar -xzvf eGroupware-1.6.003-2.tar.gz
# tar -xzvf eGroupware-egw-pear-1.6.003-2.tar.gz
# chown -R apache:apache egroupware

# vi /etc/php.ini   # 檢查 php 設定檔
display_errors = Off
memory_limit = 32M
file_uploads = On
mbstring.func_overload = 7

# /etc/init.d/httpd restart   # 重新啟動 apache

http://10.88.88.88/egroupware/setup/   # 開個瀏覽器開始檢查所缺的軟體

# pear install Auth_SASL   # 加裝 egroupware 所需要的 pear 套件
# pear install Net_IMAP
# pear install Net_Sieve
# pear install channel://pear.php.net/HTTP_WebDAV_Server-1.0.0RC4
# pear install Log


# mkdir -p /var/lib/egroupware/default/files   # 建立 egroupware 資料 files 目錄
# mkdir -p /var/lib/egroupware/default/backup   # 建立 egroupware 資料 backup 目錄
# chown -R apache:apache /var/lib/egroupware/default/files
# chown -R apache:apache /var/lib/egroupware/default/backup


# cd /var/www/html   # 切換到egroupware的相同目錄安裝甘特圖所需套件
# wget http://hem.bredband.net/jpgraph2/jpgraph-3.0.7.tar.bz2
# tar jxvf jpgraph-3.0.7.tar.bz2 /var/www/html/jpgraph  # 將 jpgraph-3.0.7.tar.bz2,解壓縮到 /var/www/html 下
# chown -R apache:apache jpgraph  # 更改權限

# wget http://www.study-area.org/apt/firefly-font/fireflysung-1.3.0.tar.gz  # 下載字型
# tar -xzvf fireflysung-1.3.0.tar.gz
# cd fireflysung
# cp fireflysung.ttf /usr/share/fonts/chinese/TrueType/
# cd /var/www/html/egroupware/projectmanager/inc/ttf-bitstream-vera-1.10
# ln /usr/share/fonts/chinese/TrueType/fireflysung.ttf


# vi /var/www/html/jpgraph/src/jpgraph_ttf.inc.php  # 修改甘特圖中文亂碼問題
 
// 找到下面整段Mark起來
//  elseif( $aFF === FF_BIG5 ) {
//      if( !function_exists('iconv') ) {
//          JpGraphError::RaiseL(25006);
//          ('Usage of FF_CHINESE (FF_BIG5) font family requires that your PHP setup has the iconv() function. By default this is not compiled into PHP (needs the "--width-iconv" when configured).');
//      }
//      return iconv('BIG5','UTF-8',$aTxt);
//  }

// 將 bkai00mp.ttf 改 fireflysung.ttf
//define('CHINESE_TTF_FONT','bkai00mp.ttf');
define('CHINESE_TTF_FONT','fireflysung.ttf');

// 將 FF_CHINESE 改成下面樣子
// 原本
// FF_CHINESE  =>   array(
//    FS_NORMAL =>CHINESE_TTF_FONT,
//    FS_BOLD =>' ',
//    FS_ITALIC =>' ',
//    FS_BOLDITALIC =>' ' ),
// 修改後
FF_CHINESE  =>   array(
    FS_NORMAL =>CHINESE_TTF_FONT,
    FS_BOLD =>CHINESE_TTF_FONT,
    FS_ITALIC =>CHINESE_TTF_FONT,
    FS_BOLDITALIC =>CHINESE_TTF_FONT ),

# cd /var/www/html/egroupware/projectmanager/inc/
# vi class.projectmanager_ganttchart.inc.php  # 修改下面
// 將 gantt_char_encode 這行 Mark 起來
//if ($this->gantt_char_encode) $text = preg_replace('/[^\x00-\x7F]/e', '"&#".ord("$0").";"',$text);

//甘特圖中日期中文亂碼問題解決,將 setlocale() 這行 Mark 起來
//$graph->scale->SetDateLocale(common::setlocale());

專案管理員 >> 網站設定 >> 字型>>選(chinese(Chinese)) >> 字型字集>>改utf-8  # 更改設定

Ref
http://www.egroupware.org/
http://www.ihao.org/dz5/viewthread.php?tid=259
http://twpug.net/modules/newbb/viewtopic.php?topic_id=2877

Add︰

帳號、密碼有誤時,表示你的 IMAP 與 egroupware 的帳號、密碼不一致,可以到 FelaMiMail 的喜好設定中調整。

1. 系統管理 >> emailadmin(編輯)啟用 >> (登出再登入)
2. emailadmin >> 點選 default profile (created by setup) >> 勾選(使用者可以自行定義郵件帳號)後儲存
3. FelaMiMail >> Manage eMail Accounts and Identities  >> 新增 >> 填寫IMAP欄位設定即 ok

0 意見: