posts - 40, comments - 58, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          Apache james 使用入門

          Posted on 2008-06-26 11:52 Astro.Qi 閱讀(720) 評論(0)  編輯  收藏 所屬分類: Java
          一、簡介

          Apache James(Java Apache Mail Enterprise Server)是Apache組織的子項目之一,完全采用純Java技術(shù)開發(fā),實現(xiàn)了SMTP、POP3與NNTP等多種郵件相關(guān)協(xié)議。

          James也是一個郵件應(yīng)用平臺,可以通過Mailet擴(kuò)充其功能,如Mail2SMS、Mail2Fax等。James提供了比較完善的配置方案,尤其是關(guān)于郵件內(nèi)容存儲和用戶信息存儲部分,可以選擇在文件、數(shù)據(jù)庫或其他介質(zhì)中保存。

          James性能穩(wěn)定、可配置性強(qiáng),還是開源項目,所有源代碼不存在版權(quán)問題,因此,James在項目中的應(yīng)用日益廣泛,現(xiàn)在常用版本為2.1,但最新版本2.3已經(jīng)推出,在本文中,我們將仍以James2.1作為介紹藍(lán)本。

          二、安裝與配置

          James的安裝配置過程非常簡單。

          第一步:安裝JDK

          請使用JDK1.3以上版本(推薦使用JDK1.4),假設(shè)安裝在c:\jdk1.3。

          第二步:下載James,并解壓

          可以到Apache網(wǎng)站上下載James2.1,下載將得到一個壓縮文件james-2.1.zip,大小為4.45M,將此包解壓到c:\james。

          第三步:直接運行或需要配置JAVA_HOME

          這時,可以嘗試直接雙擊c:\james\bin\run.bat,若啟動無誤,將提示如下:

          Using PHOENIX_HOME: C:\james
          Using PHOENIX_TMPDIR: C:\james\temp
          Using JAVA_HOME:

          Phoenix 4.0.1

          James 2.1
          Remote Manager Service started plain:4555
          POP3 Service started plain:110
          SMTP Service started plain:25
          NNTP Service Disabled
          Fetch POP Disabled

          也有可能啟動不了,并報JAVA_HOME找不到,這時,需要指定JAVA_HOME,比較簡單的方法是在c:\james\bin\run.bat中指定JAVA_HOME,修改后的run.bat如下:

          ……
          rem
          rem Determine if JAVA_HOME is set and if so then use it
          rem
          set JAVA_HOME= c:\jdk1.3
          if not "%JAVA_HOME%"=="" goto found_java
          ……

          修改完后再運行run.bat,應(yīng)該就可以正常啟動了,若還有什么問題,請參見本文的FAQ部分。

          三、項目應(yīng)用

          1、 項目需求

          某單位,有16個職能處室,共78臺電腦(操作系統(tǒng)為Win98/2000/xp),其中有1臺為專用服務(wù)器(Win2000),已連成局域網(wǎng)。為使單位內(nèi)部的信息交流,尤其是文件交互更加便捷,單位決定在局域網(wǎng)內(nèi)部架設(shè)一套E-mail系統(tǒng)。

          2、 解決方案

          在專用服務(wù)器上安裝James2.1,客戶端使用操作系統(tǒng)自帶的Outlook Express。

          3、 服務(wù)器端配置

          首先找出專用服務(wù)器的名字,假設(shè)叫unitname。

          然后打開文件c:\james\apps\james\SAR-INF\config.xml。

          在config.xml文件中,找到 Postmaster@localhost,把此項改為 Postmaster@unitname,同理,找到localhost,把此項改為unitname。其實,改這兩項就是把默認(rèn)的localhost改為機(jī)器名,這樣做是為了讓其它機(jī)器也能訪問郵件系統(tǒng),當(dāng)然,前提是在局域網(wǎng)上沒有與服務(wù)器重名的機(jī)器。

          4、 客戶端配置

          假設(shè)有一個賬號,用戶名為holen,密碼為123456,如何在Outlook中配置呢?

          首先,根據(jù)用戶名,可以得出該用戶郵箱地址為holen@unitname ,然后在輸入POP3和SMTP服務(wù)器時,直接使用服務(wù)器機(jī)器名unitname即可。

          5、 帳號管理

          James的賬號管理是通過telnet完成的,登錄命令為:

          telnet unitname 4555

          其中unitname也可以換成IP,4555是端口號。登錄時需要用戶名和密碼,初始的用戶名和密碼均為root。若登錄成功,提示如下:

          JAMES Remote Administration Tool 2.1
          Please enter your login and password
          Login id:
          Password:
          Welcome root. HELP for a list of commands

          需要注意的是,所有敲入的命令都不顯示在屏幕上。

          輸入help,將出現(xiàn)命令的幫助,信息如下:

          JAMES Remote Administration Tool 2.1
          Please enter your login and password
          Login id:
          Password:
          Welcome root. HELP for a list of commands
          Currently implemented commands:
          help display this help
          listusers display existing accounts
          countusers display the number of existing accounts
          adduser [username] [password] add a new user
          verify [username] verify if specified user exist
          deluser [username] delete existing user
          setpassword [username] [password] sets a users password
          setalias [alias] [user] locally forwards all email for alias t
          o user
          unsetalias [alias] unsets an alias
          setforwarding [username] [emailaddress] forwards a users email to another email
          address
          unsetforwarding [username] removes a forward
          user [repositoryname] change to another user repository
          shutdown kills the current JVM (convenient when J
          ames is run as a daemon)
          quit close connection

          常用的命令有l(wèi)istusers、countusers、adduser、deluser、setpassword等。

          其中添加用戶為adduser,例如:adduser holen 123456。

          通過這個后臺管理界面,管理員就可以實現(xiàn)賬號管理及其他相應(yīng)的管理功能。

          6、 應(yīng)用情況

          這套系統(tǒng)在該單位經(jīng)過一周的試運行后,已正式運行兩個月,用戶數(shù)約百人,一直很穩(wěn)定,期間,因操作系統(tǒng)故障,服務(wù)器重啟兩次,其他時間,一直處于運行狀態(tài),性能穩(wěn)定,響應(yīng)速度快。

          四、FAQ

          1、 在啟動james時,提示POP3或SMTP不能使用?

          請檢查一下,看“管理工具—>服務(wù)”里面,是不是啟動了別的郵件服務(wù)器,已將110或25端口占用了。

          2、 JAVA_HOME找不到?

          請在run.bat中指定JAVA_HOME,若還不行,請在“我的電腦—>系統(tǒng)—>高級—>環(huán)境變量”中添加一項JAVA_HOME(一般不推薦這么做)。

          3、 服務(wù)器啟動正常,但客戶端不能收發(fā)郵件?

          請檢查客戶端配置是否正常,參照前面所講,另外,請檢查james下的config.xml,是否把localhost改成了機(jī)器名。

          五、總結(jié)

          總體而言,James是一款十分優(yōu)秀的郵件服務(wù)器,具有性能穩(wěn)定、擴(kuò)展性好、可配置性強(qiáng)、響應(yīng)速度快、源碼公開等優(yōu)點。同時,由于James的后臺管理不夠方便、缺少必要的技術(shù)支持等原因,限制了james的高端企業(yè)級應(yīng)用。

          就目前情況而言,James主要用于1000用戶量以內(nèi)的郵件系統(tǒng),而且當(dāng)James用于商業(yè)性項目時,開發(fā)商一般需要對James進(jìn)行相應(yīng)的包裝,主要是后臺管理這一塊。

          主站蜘蛛池模板: 万安县| 政和县| 壤塘县| 揭西县| 青浦区| 泗洪县| 晋宁县| 五台县| 开阳县| 莱阳市| 千阳县| 荥经县| 达孜县| 四川省| 江永县| 荔浦县| 濮阳市| 石首市| 大庆市| 集安市| 晋中市| 克拉玛依市| 尉犁县| 海丰县| 鄂托克旗| 河间市| 建水县| 平湖市| 彭阳县| 应城市| 渭源县| 永兴县| 台南县| 汝阳县| 商都县| 井冈山市| 仁怀市| 乃东县| 雷波县| 镇原县| 永登县|