您好,欢迎访问一九零五行业门户网

Apache邮件发送配置

我想通过php发送邮件,下载了apache-james-2.3.2.tar,解压后点击run.bat秒退是什么情况?如果哪位大神有关于邮件服务器配置更好的方法请指教,先谢过咯
回复讨论(解决方案) http://wenku.baidu.com/link?url=akmpzxzum0trtmsqpkwiqegyop-pnm1-kqkls0y8aawjxei2ngpqpdmeatpzovoswkapziwbsrs50lctmnxuueioeqkzgnm0ghfg8ohvi7e
那个我看过了,但james\bin文件夹下根本没有install文件,,不过还是谢谢你
james安装与配置
一、安装:
1.环境要求:
已安装java平台,版本为j2sdk1.4.2,环境变量java_home设为c:\j2sdk1.4.2;
2.下载与运行:
从apache网站上下载得到一个压缩的文件james-2.1-bin.zip,大小为4.44m,将此包解压到c:\james\james-2.1下。
运行分为两种方式:前台直接运行、作为后台服务运行;
1>前台直接运行:
在c:\james\james-2.1\bin下运行run.bat
这是会出现:
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邮件服务以开启,不过window下不能关闭控制台窗口,否者邮件服务会停止。如要克服此缺点必须使james邮件服务作为作为后台服务运行。
停止前台运行按ctrl+c,会出现:
jvm exiting abnormally. shutting down phoenix.
终止批处理操作吗(y/n)?
2>后台服务运行:
将c:\james\james-2.1\conf目录下的wrapper.conf拷贝到c:\james\james-2.1\bin即包含wrapper.exe的目录下,运行:
wrapper.exe    -i    c:\james\james-2.1\bin\wrapper.conf
然后在控制面板中开启服务或重启即可。
卸载后台服务:
到c:\james\james-2.1\bin即包含wrapper.exe的目录下,运行:
wrapper.exe    -r    c:\james\james-2.1\bin\wrapper.conf
3.
二、配置:
1>服务器端配置(邮件服务器的名字假设叫emailserver,服务器管理员名admin)
首先停止已开启的james邮件服务,然后打开文件c:\james\james-2.1\apps\james\sar-inf\config.xml。
在config.xml文件中,找到postmaster@localhost,把此项改为admin@emailserver,同时,找到位于
-
-
-
-

   localhost
的localhost,把此项改为emailserver。这样就可以让其它机器也能访问邮件系统。
dns配置:找到同上文件中段中的如下程序段:





  127.0.0.1
false
将127.0.0.1的位置填入dns服务器的ip地址;
修改管理员密码:
找到同上文件中的段,如下程序段
-

-
将默认用户名root与密码root修改为需要的值
修改telnet管理程序登录端口 :(默认为4555)
找到同上文件中的段下的port如下程序段
-
4555
-
-           注释掉的,打开即可;记住把
用 注释掉;
通过修改,我们就把用户信息的存储介质从file改成了db,是指明了在db中的数据表结构及相关数据库信息。
第四步:仍然是config.xml,找到项,默认内容为空,把此项内容修改为:
org.gjt.mm.mysql.driver
                            jdbc:mysql://127.0.0.1/mail
                            root
20
或打开文件下面实例的 注释
是指mysql的jdbc驱动,注意这个默认的是有问题的,要改成mysql的驱动程序中driver.class的路径,即:
com.mysql.jdbc.driver
指数据库的访问路径,ip后的mail即mysql中新建数据库名,接下来是用户名、密码及最大连接数。
再次启动时,james将在mail数据库中自动创建有关用户的表格。
至此,数据库配置完成,启动james,若正常无误,请通过telnet添加一个新用户,比如adduser holen 123456,然后检查mysql中的mail数据库,下面将有一个表users,这是james根据file://conf/sqlresources.xml的内容创建的。
通过以上配置,james的用户信息就可以保存在数据库中了。
注:修改以前的账户会丢失!
一、faq
1、 在启动james时,提示pop3或smtp不能使用?
请检查一下,看“管理工具?>服务”里面,是不是启动了别的邮件服务器,已将110或25端口占用了。
实例:
james前台直接运行时出错:
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默认设置不允许在同一台机器上跑两个邮件服务器进程。必须关掉另一个!
检测方法:
console界面下:
d:> telnet 主机名 25(或110)
如果可以登录,出现
220 主机名 microsoft esmtp mail service, version: 6.0.2600.1106 ready at  thu,
25 aug 2005 14:14:36 +0800
则说明此机器上已有一台邮件服务器在运行。
解决:
检查windows上运行服务:
跨网传输电子邮件的服务simple mail transfer protocol (smtp),是否启动
如启动关闭之!
2、 java_home找不到?
请在run.bat中指定java_home,若还不行,请在“我的电脑?>系统?>高级?>环境变量”中添加一项java_home。
3、 服务器启动正常,但客户端不能收发邮件?
请检查客户端配置是否正常,参照前面所讲,另外,请检查james下的config.xml,是否把localhost改成了机器名。
4、修改为数据库储存后,james启动出错:
一般是数据库驱动有错。检查一下
org.gjt.mm.mysql.driver
                            jdbc:mysql://127.0.0.1/mail
                            root
20
的org.gjt.mm.mysql.driver是否对
其它类似信息

推荐信息