歡迎您光臨本站 註冊首頁

Linux Webmail IMP的安裝和配置

←手機掃碼閱讀     火星人 @ 2014-03-09 , reply:0

  概述
  
  Webmail IMP允許用基於Web的方式訪問IMAP/POP3伺服器,而且提供了地址簿、LDAP目錄查詢、支持發送和接收附件,還有很多在常用的桌面電子郵件客戶程序中可以找的功能.如果你已經安裝了支持SSL的Apache伺服器,就可以通過SSL安全地發送和讀取郵件.在這篇文章中,我們把Webmail IMP配置成使用PostgreSQL並使用IMAP連接.Webmail還可以支持很多其它的資料庫,如果你願意的話,可以使用MySQL、Oracle、Sybase以及其它SQL資料庫伺服器.當然,你也可以選擇用POP3而不用IMAP.
  
  注意事項
  下面所有的命令都是Unix兼容的命令.
  
  源路徑都為「/var/tmp」(當然在實際情況中也可以用其它路徑).
  
  安裝在RedHat Linux 6.1和6.2下測試通過.
  
  要用「root」用戶進行安裝.
  
  Horde的版本是1.2.0.
  
  Webmail IMP的版本是2.2.0.
  
  PHPLib的版本是7.2b.
  
  軟體包的來源
  Webmail IMP的主頁:http://www.horde.org/imp/
  
  下載:horde-1.2.0-pre11.tar.gz
  
  下載:imp-2.2.0-pre11.tar.gz
  
  PHPLib的主頁:http://phplib.netuse.de/index.php3
  
  下載:phplib-7.2b.tar.gz
  
  安裝前的準備工作
  l 先要安裝Apache伺服器
  
  l 安裝PHP4
  
  l 如果想為Webmail IMP加上SQL的支持,還要安裝PostgreSQL或其它資料庫伺服器
  
  l 安裝IMAP/POP伺服器
  
  l PHPLIB 7.2或更高版本
  
  安裝Webmail IMP所需的PHPLib
  為了在Linux伺服器上運行Webmail IMP,必須安裝PHPLib(PHP開發者用來開發Web應用程序的工具包).按照下面的步驟安裝PHPLib:
  
  軟體包
  
  PHPLib的主頁:http://phplib.netuse.de/index.php3
  
  下載:phplib-7.2b.tar.gz
  
  [root@deep /]# cp phplib-7.2b.tar.gz /home/httpd/
  [root@deep /]# cd /home/httpd/
  [root@deep httpd]# tar xzpf phplib-7.2b.tar.gz
  
  第一步
  
  轉到Web伺服器的DocumentRoot目錄,用下面的命令創建「/home/httpd/php」目錄:
  
  [root@deep /]# cd /home/httpd/
  [root@deep httpd]# mkdir php
  
  第二步
  
  先把PHPLib解壓,然後把PHPLib中的文件拷貝到「php」目錄下:
  
  [root@deep /]# cd /home/httpd/phplib-7.2b/php/
  [root@deep php]# cp * /home/httpd/php/
  [root@deep php]# cd /home/httpd/
  [root@deep httpd]# rm -f phplib-7.2b.tar.gz
  [root@deep httpd]# rm -rf phplib-7.2b/
  
  注意:當把所有的文件都拷貝到「php」目錄下之後,把tar壓縮包和「phplib-verison」目錄刪掉.


  
  編譯
  按照下面的步驟,在伺服器上安裝Webmail IMP.
  
  第一步
  
  把「horde-1.2.0-pre11.tar.gz」拷貝到Web伺服器的DocumentRoot(/home/httpd)目錄下,運行下面的命令:
  
  [root@deep /]# cp horde-version.tar.gz /home/httpd/
  [root@deep /]# cd /home/httpd/
  [root@deep httpd]# tar xzpf horde-version.tar.gz
  [root@deep httpd]# mv horde-version horde
  [root@deep httpd]# rm -f horde-version.tar.gz
  
  注意:我們在把「horde-version」改名為「horde」之後,把horde的壓縮文件刪掉.
  
  第二步
  
  用下面的命令把「imp-2.2.0-pre11.tar.gz」拷貝到新的「horde」目錄(/homte/httpd/horde),解壓並把「imp-version」改名為「imp」:
  
  [root@deep /]# cp imp-version.tar.gz /home/httpd/horde/
  [root@deep /]# cd /home/httpd/horde/
  [root@deep horde]# tar xzpf imp-version.tar.gz
  [root@deep horde]# mv imp-version imp
  [root@deep horde]# rm -f imp-version.tar.gz
  
  注意:「imp」目錄在「horde」目錄下,否則Webmail就不能工作.把「imp-version」目錄改名為「imp」之後,可以把IMP的壓縮文件刪掉.
  
  第三步
  
  把「horde」目錄及其子目錄和目錄下的所有文件的所有者改為「root」.
  
  [root@deep /]# chown -R 0.0 /home/httpd/horde/
  
  第四步
  
  用下面的命令把「/home/httpd/horde/phplib/*.ihtml」文件拷貝到新的「php」(/home/httpd/php)目錄下:
  
  [root@deep /]# cp /home/httpd/horde/phplib/*.ihtml /home/httpd/php/
  
  配置並創建Webmail IMP的SQL資料庫
  我們必須配置資料庫是的Webmail IMP可以和SQL資料庫結合使用.可以用「/home/httpd/horde/imp/config/scripts」目錄下已經寫好的腳本.以PostgreSQL為例,根據下面的步驟:
  
  第一步
  
  ,編輯「/home/httpd/horde/imp/config/scripts」目錄下的「pgsql_create.sql」,把默認的httpd的用戶名改為「www」.
  
  編輯「pgsql_create.sql」文件(vi /home/httpd/horde/imp/config/scripts/pgsql_create.sql),把下面這一行:
  
  GRANT SELECT, INSERT, UPDATE ON imp_pref, imp_addr TO nobody;
  
  改為:
  
  GRANT SELECT, INSERT, UPDATE ON imp_pref, imp_addr TO www;
  
  第二步
  
  我們必須給予運行Apache的用戶「www」在我們的PostgreSQL資料庫中創建Webmail IMP資料庫的許可權.
  
  用PostgreSQL的「createuser」命令在資料庫中設定httpd的用戶名為「www」:
  
  [root@deep /]# su postgres
  [postgres@deep /]$ createuser


  
  Enter name of user to add - www
  Enter users postgres ID or RETURN to use unix user ID: 80 -> [Press Enter]
  Is user "www" allowed to create databases (y/n) y
  Is user "www" a superuser? (y/n) n
  createuser: www was successfully added
  
  第三步
  
  一旦httpd用戶「www」被加到PostgreSQL資料庫中,用「postgres」用戶登錄,運行腳本文件「pgsql_create.sql」,自動在PostgreSQL中加入Webmail IMP資料庫.
  
  用下面的命令在PostgreSQL中創建Webmail IMP資料庫:
  
  [root@deep /]# cd /home/httpd/horde/imp/config/scripts/
  [root@deep scripts]# su postgres
  [postgres@deep scripts]$ psql template1 < pgsql_create.sql
  
  // IMP database creation script for postgreSQL
  // Author: barce@lines.edu
  // Date: Aug-29-1998
  // Notes: replace "nobody" with yours httpd username
  // Run using: psql template1 < pgsql_create.sql
  CREATE DATABASE horde;
  CREATEDB
  connect horde
  connecting to new database: horde
  CREATE TABLE imp_pref (
  username text,
  sig text,
  fullname text,
  replyto text,
  lang varchar(30)
  );
  CREATE
  CREATE TABLE imp_addr (
  username text,
  address text,
  nickname text,
  fullname text
  );
  CREATE
  GRANT SELECT, INSERT, UPDATE ON imp_pref, imp_addr TO www;
  CHANGE
  EOF
  
  第四步
  
  重新啟動PostgreSQL伺服器,讓所做的改變生效.
  
  用下面的命令重新啟動PostgreSQL:
  
  [root@deep /]# /etc/rc.d/init.d/postgresql restart
  Stopping postgresql service: [ OK ]
  Checking postgresql installation: looks good!
  Starting postgresql service: postmaster [13474]
  
  第五步
  
  把「/home/httpd/horde/phplib/horde_phplib.inc」拷貝為「/home/httpd/php/local.inc」:
  
  [root@deep /]# cp /home/httpd/horde/phplib/horde_phplib.inc /home/httpd/php/local.inc
  cp: overwrite `/home/httpd/php/local.inc? y
  
  編輯phplib的配置文件「local.inc」,可以設置phplib的運行情況.
  
  編輯「local.inc」文件(vi /home/httpd/php/local.inc),去掉註釋並修改下面這些行來設置默認的資料庫:
  
  /* To use an SQL database, uncomment and edit the following: */
  class HordeDB extends DB_Sql {
  var $Host = localhost;
  var $Database = horde;
  var $User = www;
  var $Password = some-password;
  var $Port = 5432;
  function halt($msg) {
  printf("Database error (HordeDB): %s
  n", $msg);
  }
  }


  class HordeCT extends CT_Sql {
  var $database_class = HordeDB; // Which database class to use...
  var $database_table = active_sessions; // and find our data in this table.
  }
  
  注意:不要忘了去掉Webmail IMP所使用的存儲器類型的註釋,而且只能選擇一種存儲器類型.我們選擇SQL為存儲器.還要


[火星人 ] Linux Webmail IMP的安裝和配置已經有529次圍觀

http://coctec.com/docs/linux/show-post-55845.html