重新試用JAMES

來源:互聯網
上載者:User

一年多了,上周又從APACHE下載了JAMES的最新版本拿來用,發現一年前寫的JAMES配置指南對新版本的JAMES上一樣適用,呵呵,懷念JAVA開發的時代,懷念JAMES,以下是文章全文
James2.1.3入門配置指南
James是一個純JAVA的郵件伺服器,而且是開放原始碼,網上目前也有很多
相關的配置指南,不過2.1.3版本比起以前的版本來說有些變化,經過一天的摸索,
我弄了個大概.
JAMES內建的說明文檔很簡單,許多地方都是一點帶過,光靠看說明文檔許多問題是解決不了的
由於JAMES也是APACHE的子項目,所以他的安裝也就是直接解壓就可以用了
拿我來說吧,解壓到d:/james下,解壓後,進入d:/james/apps目錄
裡面有個james.sar檔案,在該檔案上點擊右鍵用WINRAR解壓,注意不要修改預設的解壓路徑
然後進入D:/james-2.1.3/apps/james/SAR-INF,裡面的config.xml就是JAMES的核心設定檔了

首先更改伺服器名,預設都是localhost,要讓別人可以用你機器上的伺服器,就要改咯 ,我的機器名叫 mrp-cz
<postmaster>Postmaster@localhost</postmaster>改成<postmaster>Postmaster@mrp-cz</postmaster>
<servername>localhost</servername>改成<servername>mrp-cz</servername>

還有一些POP3和SMTP的連接埠設定這些,一般都不用改動的,用預設值就可以了

下面主要是說一下如果將JAMES跟資料庫想串連,以便跟自己的項目緊密結合起來, 在JAMES的說明檔案裡面說得太簡單了,
大家可以參考一下說明檔案裡面關於Repositories的說明
JAMES的資料存放方式有三種:file,db,dbfile
file就是以檔案方式儲存
db當然是資料庫
dbfile我個人感覺一般都不會用它的,它是把訊息頭用資料庫方式存放,而把訊息體用檔案方式存放

隨便說一下拉,拿檔案存放來說 D:/james-2.1.3/apps/james/var/mail裡面就是存放的信件內容
spool裡面是存放的正在處理的信件,而inbox裡面是存放的已發送郵件,資料庫也是一樣

D:/james-2.1.3/apps/james/conf/sqlResources.xml是SQL描述檔案,裡面支援
大部分主流資料庫,如果你用的資料庫在裡面沒有,自己增加就是

好了,開始配置了
先找到config.xml裡面的<database-connections>,預設裡面是沒有實際內容的,只有兩個被屏蔽了的例子
我用的MS SQL,所以就直接把MSSQL的那個例子拿來用了, 下面就是我的設定檔,跟JBOSS差不多
 <data-source name="maildb" class="org.apache.james.util.mordred.JdbcDataSource">
            <driver>com.microsoft.jdbc.sqlserver.SQLServerDriver</driver>
            <dburl>jdbc:microsoft:sqlserver://mit-devserver:1433;DatabaseName=JAMES</dburl>
            <user>sa</user>
            <password>1</password>
            <max>20</max>
         </data-source>
  name就是該串連的標識,以後設串連就都用它了

  然後是郵件的存放設定,找到<inboxRepository>項
  預設是<repository destinationURL="file://var/mail/inboxes/" type="MAIL"/>
  屏蔽掉,在它下面有個例子  <repository destinationURL="db://maildb/inbox/" type="MAIL"/>,啟用它

  然後是spool,找到<spoolRepository>將預設屏蔽掉
  啟用<repository destinationURL="db://maildb/spool/spool" type="SPOOL"/>

  然後是user,同樣將預設的去掉,改成
  <repository name="LocalUsers" class="org.apache.james.userrepository.JamesUsersJdbcRepository" destinationURL="db://maildb/users">
         <sqlFile>file://conf/sqlResources.xml</sqlFile>
      </repository>

   好了,配置完畢,啟動james吧,如果一切順利,在你指定的資料庫下面就會多5張表,具體細節不多說了,自己研究去吧
   JAMES的控制是採用遠端控制手段
   運行telnet mrp-cz(替換成你的機器名) 4555
   預設的登入名稱和密碼都是root如果你要更改可以改寫config.xml裡面的<administrator_accounts>項
   注意,一切都是暗箱操作,你輸入的任何命令都看不到,只有按了斷行符號以後才知道結果,人家是免費軟體有償服務,將就用吧,可以
   鍛煉指法的準確性
   輸入help,可以知道命令列表 ,這個不多說了
   outlook的設定跟一般的設定沒什麼區別,就是在設定pop3和smtp伺服器位址的時候,直接輸入
   伺服器機器名就可以了

   另外,james會首先把郵件存放在spool裡面進行處理,所以有時馬上發了郵件收不到很正常,等一會就可以了

   建議大家下載帶原始碼的版本,裡面值得學習的東西一大堆

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.