posts - 431,  comments - 344,  trackbacks - 0

          一、安裝:

          1. 環(huán)境要求:

          已安裝Java平臺(tái),版本為j2sdk1.4.2,環(huán)境變量JAVA_HOME設(shè)為C:"j2sdk1.4.2

          2. 下載與運(yùn)行:

          Apache網(wǎng)站上下載得到一個(gè)壓縮的文件james-2.1-bin.zip,大小為4.44M,將此包解壓到C:"James"james-2.1下。

          運(yùn)行分為兩種方式:前臺(tái)直接運(yùn)行、作為后臺(tái)服務(wù)運(yùn)行;

          1>前臺(tái)直接運(yùn)行:

          C:"James"james-2.1"bin下運(yùn)行run.bat

          這是會(huì)出現(xiàn):

          Using PHOENIX_HOME:   C:"James"james-2.1

          Using PHOENIX_TMPDIR: C:"James"james-2.1"temp

          Using JAVA_HOME:      C:"j2sdk1.4.2

          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

          這是就表示James郵件服務(wù)以開(kāi)啟,不過(guò)Window下不能關(guān)閉控制臺(tái)窗口,否者郵件服務(wù)會(huì)停止。如要克服此缺點(diǎn)必須使James郵件服務(wù)作為作為后臺(tái)服務(wù)運(yùn)行。

          停止前臺(tái)運(yùn)行按Ctrl+C,會(huì)出現(xiàn):

          JVM exiting abnormally. Shutting down Phoenix.

          終止批處理操作嗎(Y/N)?

          2>后臺(tái)服務(wù)運(yùn)行:

          C:"James"james-2.1"conf目錄下的wrapper.conf拷貝到C:"James"james-2.1"bin即包含wrapper.exe的目錄下,運(yùn)行:

          wrapper.exe    -i     C:"James"james-2.1"bin"wrapper.conf 

          然后在控制面板中開(kāi)啟服務(wù)或重啟即可。

          卸載后臺(tái)服務(wù):

          C:"James"james-2.1"bin即包含wrapper.exe的目錄下,運(yùn)行:

          wrapper.exe     -r    C:"James"james-2.1"bin"wrapper.conf

          3.  

          二、配置:

          1>服務(wù)器端配置(郵件服務(wù)器的名字假設(shè)叫EmailServer,服務(wù)器管理員名Admin

          首先停止已開(kāi)啟的James郵件服務(wù),然后打開(kāi)文件C:"James"james-2.1"apps"james"SAR-INF"config.xml

          Ø         config.xml文件中,找到Postmaster@localhost,把此項(xiàng)改為Admin@EmailServer,同時(shí),找到位于

          <!-- By default, the servername 'localhost' is specified. This can be removed, if required.   -->

          - <!-- 

           -->

          - <!-- Warning: If you are using fetchpop it is important to include the   -->

          - <!-- fetched domains in the server name list to prevent looping.       -->

          - <servernames autodetect="true" autodetectIP="true">

          - <!-- CONFIRM?

            -->

           <servername> localhost </servername>

           </servernames>

          localhost,把此項(xiàng)改為EmailServer。這樣就可以讓其它機(jī)器也能訪問(wèn)郵件系統(tǒng)。

          Ø         DNS配置:找到同上文件中<dnsserver>段中的如下程序段:

          - <dnsserver>

          - <servers>

          - <!-- CONFIRM?   -->

          - <!-- Enter ip address of your DNS server, one IP address per server   -->

          - <!-- element. The default configuration assumes a DNS server on the localhost.   -->

           <server>127.0.0.1</server>

           </servers>

           <authoritative>false</authoritative>

           </dnsserver>

          127.0.0.1的位置填入DNS服務(wù)器的IP地址;

          Ø         修改管理員密碼:

          找到同上文件中的<administrator_accounts>段,如下程序段

          - <administrator_accounts>

          - <!-- CHECKME!

           -->

          - <!-- Change the default login/password.

           -->

           <account login="root" password="root" />

           </administrator_accounts>

          將默認(rèn)用戶名root與密碼root修改為需要的值

          Ø         修改telnet管理程序登錄端口 :(默認(rèn)為4555

          找到同上文件中的<remotemanager>段下的port如下程序段

          - <remotemanager>

           <port>4555</port>

          - <!--   Uncomment this if you want to bind to a specific inetaddress

           -->

          -          <!--

          <port>4555</port>之間的端口號(hào)4555改為需要的端口。

          2> 客戶端配置:(略)

          3>帳號(hào)管理

          James的賬號(hào)管理是通過(guò)telnet完成的,登錄命令為:

          telnet EmailServer 4555

          其中EmailServer也可以換成IP4555是端口號(hào)。登錄時(shí)需要用戶名和密碼,開(kāi)始默認(rèn)的用戶名和密碼均為root。若登錄成功,提示如下:

          JAMES Remote Administration Tool 2.1

          Please enter your login and password

          Login id:

                 此時(shí)輸入root用戶名,然后會(huì)出現(xiàn):

                        Password:

                 輸入密碼root

          注意:在有些操作系統(tǒng)如Windows2000上,用戶輸入均不顯示。

          telnet命令列表:

          help

          顯示幫助

          Listusers

          列出目前存在的賬戶

          Countusers

          顯示目前存在的賬戶的數(shù)量

          addusers [用戶名] [密碼]

          添加新用戶

          verify [用戶名]

          驗(yàn)證特定用戶是否存在

          deluser [用戶名]   

          刪除已存在用戶

          setpassword [用戶名] [密碼]      

          設(shè)置某一用戶的密碼

          setalias [別名] [用戶名]

          從本地將[別名]的所有郵件轉(zhuǎn)寄[用戶名]

          unsetalias [別名]

          取消setalias設(shè)置

          setforwarding [用戶名] [email地址]

          [用戶名]的郵件轉(zhuǎn)寄指定[email地址]

          unsetforwarding [用戶名]

          取消setforwarding設(shè)置

          user [資源]

          變?yōu)榱硪挥脩舻馁Y源

          shutdown      

          停止當(dāng)前James郵件服務(wù)的JVM程序(對(duì)于James為后臺(tái)服務(wù)時(shí),用此命令很方便)

          Quit

          斷開(kāi)telnet連接

          4>用戶信息的數(shù)據(jù)庫(kù)存儲(chǔ)

          James郵件用戶的用戶信息默認(rèn)保存在apps"james"var"users目錄下,通過(guò)修改配置文件apps"james"SAR-INF"config.xml,可以把用戶信息保存到數(shù)據(jù)庫(kù)中,配置方法如下:

          假設(shè)使用的是MySQL數(shù)據(jù)庫(kù):

          第一步:首先將MySQL的驅(qū)動(dòng)程序(例如:mysql-connector-java-3.1.6-bin.jar)考到jameslib目錄下(例如:D:"james"lib

          第二步:在MySQL中新建一個(gè)數(shù)據(jù)庫(kù)mail

          第三步:打開(kāi)config.xml,找到<users-store>這一項(xiàng),此面默認(rèn)的內(nèi)容為:

          <repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
                   <destination URL="file://var/users/"/>
          </repository>

          需要修改為:

          <repository name="LocalUsers"

           class="org.apache.james.userrepository.JamesUsersJdbcRepository" destinationURL="db://maildb/users">
                   <sqlFile>file://conf/sqlResources.xml</sqlFile>
                </repository>

          其實(shí)如不修改也行,因?yàn)槲募旅嬉灿袑?shí)例,不過(guò)是用<!-- --> 注釋掉的,打開(kāi)即可;記住把

          <repository name="LocalUsers" class="org.apache.james.userrepository.UsersFileRepository">
                   <destination URL="file://var/users/"/>
          </repository>

          <!-- --> 注釋掉;

          通過(guò)修改,我們就把用戶信息的存儲(chǔ)介質(zhì)從file改成了db<sqlFile>是指明了在db中的數(shù)據(jù)表結(jié)構(gòu)及相關(guān)數(shù)據(jù)庫(kù)信息。

          第四步:仍然是config.xml,找到<data-sources>項(xiàng),默認(rèn)內(nèi)容為空,把此項(xiàng)內(nèi)容修改為:

          <data-source name="maildb" class="org.apache.james.util.mordred.JdbcDataSource">
                                     <driver>org.gjt.mm.mysql.Driver</driver>
                                      <dburl>jdbc:mysql://127.0.0.1/mail</dburl>
                                      <user>root</user>
                                      <password></password>
                                      <max>20</max>
          </data-source>

          或打開(kāi)文件下面實(shí)例的<!-- --> 注釋

          <driver>是指MySQLJDBC驅(qū)動(dòng),注意這個(gè)默認(rèn)的<driver>是有問(wèn)題的,要改成MySQL的驅(qū)動(dòng)程序中Driver.class的路徑,即:

                             <driver>com.mysql.jdbc.Driver</driver>

          <dburl>指數(shù)據(jù)庫(kù)的訪問(wèn)路徑,IP后的mailMySQL新建數(shù)據(jù)庫(kù)名,接下來(lái)是用戶名、密碼及最大連接數(shù)。

          再次啟動(dòng)時(shí),james將在mail數(shù)據(jù)庫(kù)中自動(dòng)創(chuàng)建有關(guān)用戶的表格。

          至此,數(shù)據(jù)庫(kù)配置完成,啟動(dòng)James,若正常無(wú)誤,請(qǐng)通過(guò)telnet添加一個(gè)新用戶,比如adduser holen 123456,然后檢查MySQL中的mail數(shù)據(jù)庫(kù),下面將有一個(gè)表users,這是James根據(jù)file://conf/sqlResources.xml的內(nèi)容創(chuàng)建的。

          通過(guò)以上配置,James的用戶信息就可以保存在數(shù)據(jù)庫(kù)中了。

          注:修改以前的賬戶會(huì)丟失!

          一、FAQ

          1在啟動(dòng)james時(shí),提示POP3SMTP不能使用?

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

                 實(shí)例:

          james前臺(tái)直接運(yùn)行時(shí)出錯(cuò):

          ERROR   2005-08-25 08:58:38.642 [Phoenix.] (): Component named "smtpserver" failed to pass through the Initialization stage. (Reason: Java.net.BindException: Address already in use: JVM_Bind).

          ERROR   2005-08-25 08:58:38.652 [Phoenix.] (): There was an error running phase "startup" for Block named "smtpserver". (Reason: Component named "smtpserver" failed to pass through the Initialization stage. (Reason: Java.net.BindException: Address already in use: JVM_Bind).).

          org.apache.excalibur.containerkit.lifecycle.LifecycleException: Component named "smtpserver" failed to pass through the Initialization stage. (Reason: Java.net.BindException: Address already in use: JVM_Bind).

          原因:

           james默認(rèn)設(shè)置不允許在同一臺(tái)機(jī)器上跑兩個(gè)郵件服務(wù)器進(jìn)程。必須關(guān)掉另一個(gè)!

          檢測(cè)方法:

          console界面下:

           d:> telnet 主機(jī)名 25(或110

          如果可以登錄,出現(xiàn)

           220 主機(jī)名 Microsoft ESMTP MAIL Service, Version: 6.0.2600.1106 ready at Thu,

           25 Aug 2005 14:14:36 +0800

          則說(shuō)明此機(jī)器上已有一臺(tái)郵件服務(wù)器在運(yùn)行。

          解決:

          檢查Windows上運(yùn)行服務(wù):

          跨網(wǎng)傳輸電子郵件的服務(wù)Simple Mail Transfer Protocol (SMTP),是否啟動(dòng)

          如啟動(dòng)關(guān)閉之!

          2 JAVA_HOME找不到?

          請(qǐng)?jiān)?/span>run.bat中指定JAVA_HOME,若還不行,請(qǐng)?jiān)?#8220;我的電腦—>系統(tǒng)—>高級(jí)—>環(huán)境變量”中添加一項(xiàng)JAVA_HOME

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

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

          4、修改為數(shù)據(jù)庫(kù)儲(chǔ)存后,james啟動(dòng)出錯(cuò):

          一般是數(shù)據(jù)庫(kù)驅(qū)動(dòng)有錯(cuò)。檢查一下

          <data-source name="maildb" class="org.apache.james.util.mordred.JdbcDataSource">
                                     <driver>org.gjt.mm.mysql.Driver</driver>
                                      <dburl>jdbc:mysql://127.0.0.1/mail</dburl>
                                      <user>root</user>
                                      <password></password>
                                      <max>20</max>
          </data-source>

          <driver>org.gjt.mm.mysql.Driver</driver>是否對(duì)

          posted on 2007-10-16 16:42 周銳 閱讀(1891) 評(píng)論(0)  編輯  收藏 所屬分類: ApacheJava
          主站蜘蛛池模板: 马龙县| 金山区| 铜梁县| 卢氏县| 米脂县| 山东省| 类乌齐县| 安塞县| 会同县| 星子县| 营口市| 汉寿县| 贡觉县| 通城县| 鹿泉市| 长岭县| 招远市| 广元市| 博罗县| 崇仁县| 桐庐县| 翁源县| 罗平县| 永定县| 诸城市| 焉耆| 政和县| 和龙市| 浑源县| 湟中县| 若尔盖县| 成武县| 哈密市| 九龙坡区| 阜阳市| 昆明市| 卓资县| 泸溪县| 宜良县| 夏河县| 哈尔滨市|