James:是否能够向外网c 发送邮件件

Apache James邮件服务器介绍及配置发送外网邮件-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
Apache James邮件服务器介绍及配置发送外网邮件
来源:互联网 更新时间: 23:46:42 责任编辑:王亮字体:
一、简介Apache James(Java Apache Mail Enterprise Server)是Apache组织的子项目之一,完全采用纯Java技术开发,实现了SMTP、POP3与NNTP等多种邮件相关协议。James也是一个邮件应用平台,可以通过Mailet扩充其功能,如Mail2SMS、Mail2Fax等。James提供了比较完善的配置方案,尤其是关于邮件内容存储和用户信息存储部分,可以选择在文件、数据库或其他介质中保存。James性能稳定、可配置性强,还是开源项目,所有源代码不存在版权问题,因此,James在项目中的应用日益广泛,现在常用版本为2.1,但最新版本2.3已经推出,在本文中,我们将仍以James2.1作为介绍蓝本。二、安装与配置James的安装配置过程非常简单。第一步:安装JDK请使用JDK1.3以上版本(推荐使用JDK1.4),假设安装在c:\jdk1.3。第二步:下载James,并解压可以到Apache网站上下载James2.1,下载将得到一个压缩文件james-2.1.zip,大小为4.45M,将此包解压到c:\james。第三步:直接运行或需要配置JAVA_HOME这时,可以尝试直接双击c:\james\bin\run.bat,若启动无误,将提示如下:Using PHOENIX_HOME:&&&C:\jamesUsing PHOENIX_TMPDIR: C:\james\tempUsing JAVA_HOME:Phoenix 4.0.1James 2.1Remote Manager Service started plain:4555POP3 Service started plain:110SMTP Service started plain:25NNTP Service DisabledFetch POP Disabled也有可能启动不了,并报JAVA_HOME找不到,这时,需要指定JAVA_HOME,比较简单的方法是在c:\james\bin\run.bat中指定JAVA_HOME,修改后的run.bat如下:&&remrem Determine if JAVA_HOME is set and if so then use itremset JAVA_HOME= c:\jdk1.3if not &%JAVA_HOME%&==&& goto found_java&&修改完后再运行run.bat,应该就可以正常启动了,若还有什么问题,请参见本文的FAQ部分。三、项目应用1、&&项目需求某单位,有16个职能处室,共78台电脑(操作系统为Win98/2000/xp),其中有1台为专用服务器(Win2000),已连成局域网。为使单位内部的信息交流,尤其是文件交互更加便捷,单位决定在局域网内部架设一套E-mail系统。2、&&解决方案在专用服务器上安装James2.1,客户端使用操作系统自带的Outlook Express。3、&&服务器端配置首先找出专用服务器的名字,假设叫unitname。然后打开文件c:\james\apps\james\SAR-INF\config.xml。
相关文章:
上一篇文章:下一篇文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号最近公司做的一个项目,用户注册需要邮箱验证,本想调用别人的服务器,调用apache自带的email包实现!
但Boos发话,要自己搭建一个邮箱服务器。。。
先前使用了winMail,但是收费的,最终不了了之
后续又看了sendMail,只不过sendMail是在linux下,而我们的项目是部署在windowss 平台下...
最终选定了Apache James,个人认为还算好用
在网上整理了整理,最终还是想写个笔记,分享给大家
1.环境搭建
&&&& 下载JDK
&&&& 下载james 到apache网站下载:
&&&& 下载javamail相关jar包
&&& & 如果下载不到,可到CSDN资源里去下载,专门上传了一份
& & &&james-binary-2.3.1.zip:
& & & &&mail.jar:
2. 启动james
&&&& 进入james安装目录:C:\james-2.3.2\bin
&&& &运行run.bat
&&& &默认我们不更改C:\james-2.3.2\apps\james\SAR-INF 下的config.xml
&&&& 如果不修改,邮件服务器的域名默认为localhost,则跳过第三步骤
&&&&&注意:C:\james-2.3.2\apps\james\SAR-INF 下的config.xml配置文件是在james第一次启动时生成的
3. 修改james-2.3.2\apps\james\SAR-INF\config.xml配置文件
&&& (1)查找替换所有的localhost为你的域名,比如
&&&&&&&&&&&&【如果你没有一个域名,那么可以在system32/drivers/etc/hosts文件中添加一个伪域名用于测试,&&&&&& 192.168.0.45&&】
&&& (2)找到
&&&& 把localhost该成你自己想要的邮箱域名,&把自动探测IP属性设置为“false”这里假设改成 &如果开了一个帐号&bjxc ,那么他的邮件地址就是&&&&& bjxc&修改结果如下:
&&&& (3)注释掉以下代码
&&&& (4)配置DNS Server&
&&&&&&&&&&&&&& 在cmd中用ipconfig /all 命令查看你的dns server ip
&&&&&&&&&&&&& &DNS Servers . . . . . . . . . . . : 202.106.46.151
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 202.106.195.68
&&&&&&&&&&&&&&如果是伪域名,还需要将本机地址也列进去,最好放到第一位。&server&192.168.0.45&/server&
&&&&&&&&&&&&&& 添加如下:&
&&&& (5)配置smtp server,pop3 server等
&&&&&&&&&&&&& 查找所有myMailServer,替换为你的域名。如:
&&&&&&&&&&&& &helloName autodetect=&false&&myMailServer&/helloName&,将myMailServer修改为你的域名。比如:
&&&&&(6)设置smtpserver&&
&&&&&&&&&&&&&&& 打开smtp认证 &authRequired&true&/authRequired&
&&&&&James服务配置完成
&&&&& 注:以上设置好之后,重启james服务
四.创建邮件帐号
&&&& 进入控制台命令:C:\james\bin&telnet localhost 4555
&&&& 然后将进入:JAMES Remote Administration Tool 2.3.1
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Please enter your login and password
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Login id:
&&& 默认的登陆id 为root 密码也为 root ,登陆成功后结果如下:
&&& 创建新用户的命令是:adduser username password,如下图
&&& 账号创建成功后,退出管理器我们就可以开始我们的Mail应用了。
&& 代码如下:
& OK,大功告成!!!
最近公司做的一个项目,用户注册需要邮箱验证,本想调用别人的服务器,调用apache自带的email包实现!
但Boos发话,要自己搭建一个邮箱服务器。。。
先前使用了winMail,但是收费的,最终不了了之
后续又看了sendMail,只不过sendMail是在linux下,而我们的项目是部署在windowss 平台下...
最终选定了Apache James,个人认为还算好用
在网上整理了整理,最终还是想写个笔记,分享给大家
1.环境搭建
&&&& 下载JDK
&&&& 下载james 到apache网站下载:
&&&& 下载javamail相关jar包
&&& & 如果下载不到,可到CSDN资源里去下载,专门上传了一份
& & &&james-binary-2.3.1.zip:
& & & &&mail.jar:
2. 启动james
&&&& 进入james安装目录:C:\james-2.3.2\bin
&&& &运行run.bat
&&& &默认我们不更改C:\james-2.3.2\apps\james\SAR-INF 下的config.xml
&&&& 如果不修改,邮件服务器的域名默认为localhost,则跳过第三步骤
&&&&&注意:C:\james-2.3.2\apps\james\SAR-INF 下的config.xml配置文件是在james第一次启动时生成的
3. 修改james-2.3.2\apps\james\SAR-INF\config.xml配置文件
&&& (1)查找替换所有的localhost为你的域名,比如
&&&&&&&&&&&&【如果你没有一个域名,那么可以在system32/drivers/etc/hosts文件中添加一个伪域名用于测试,&&&&&& 192.168.0.45&&】
&&& (2)找到
&&&& 把localhost该成你自己想要的邮箱域名,&把自动探测IP属性设置为“false”这里假设改成 &如果开了一个帐号&bjxc ,那么他的邮件地址就是&&&&& bjxc&修改结果如下:
&&&& (3)注释掉以下代码
&&&& (4)配置DNS Server&
&&&&&&&&&&&&&& 在cmd中用ipconfig /all 命令查看你的dns server ip
&&&&&&&&&&&&& &DNS Servers . . . . . . . . . . . : 202.106.46.151
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& 202.106.195.68
&&&&&&&&&&&&&&如果是伪域名,还需要将本机地址也列进去,最好放到第一位。&server&192.168.0.45&/server&
&&&&&&&&&&&&&& 添加如下:&
&&&& (5)配置smtp server,pop3 server等
&&&&&&&&&&&&& 查找所有myMailServer,替换为你的域名。如:
&&&&&&&&&&&& &helloName autodetect=&false&&myMailServer&/helloName&,将myMailServer修改为你的域名。比如:
&&&&&(6)设置smtpserver&&
&&&&&&&&&&&&&&& 打开smtp认证 &authRequired&true&/authRequired&
&&&&&James服务配置完成
&&&&& 注:以上设置好之后,重启james服务
四.创建邮件帐号
&&&& 进入控制台命令:C:\james\bin&telnet localhost 4555
&&&& 然后将进入:JAMES Remote Administration Tool 2.3.1
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Please enter your login and password
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Login id:
&&& 默认的登陆id 为root 密码也为 root ,登陆成功后结果如下:
&&& 创建新用户的命令是:adduser username password,如下图
&&& 账号创建成功后,退出管理器我们就可以开始我们的Mail应用了。
&& 代码如下:
& OK,大功告成!!!
参考知识库
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:475628次
积分:5343
积分:5343
排名:第4206名
原创:55篇
转载:237篇
评论:51条
(4)(2)(1)(1)(5)(4)(4)(7)(6)(13)(24)(7)(3)(1)(3)(7)(1)(1)(1)(2)(1)(1)(8)(8)(9)(3)(6)(4)(27)(19)(12)(1)(1)(2)(5)(21)(20)(28)(2)(3)(1)(10)(1)(6)23:10 提问
James 内网发不了外网邮件,求解答
在用James部署邮件服务器的时候,
已经成功部署在linux上,并且可以实现内网邮件的发送和接收,
外网的邮件也可以发送进来,但内网的邮件发不到外网的邮箱
如:可以发给任何一个的邮箱
QQ,163可以发给的邮箱
但是的邮箱发不了QQ,163外网邮箱呀
Caused by: com.sun.mail.smtp.SMTPAddressFailedException: 550 5.7.1 Requested action not taken: relaying denied
Config.xml文件也按下面的这个地址来设置了
我也添加了MX映射,为何还不行呢? 求解答,快疯了
按赞数排序
上面的配置少了一个解析,所以一直不成功
外发邮件的时候,对方的邮箱服务器会发一个请求过了我的邮件,看连接是否成功
这前少了这个解析,对方邮箱找不到我的主机,所以一直不成功
搞了N天,终于搞定
提示地址无效,看看你设置的qq 163的smtp服务器是否正确,或者域名解析是否正确。
String toList = "";
// 这个类主要是设置邮件
MailSenderInfo mailInfo = new MailSenderInfo();
mailInfo.setMailServerHost("0756zh.net");
mailInfo.setMailServerPort("25");
mailInfo.setValidate(true);
mailInfo.setToAddress(toList); // 设置接受者邮箱地址
mailInfo.setUserName(""); // 实际发送者
mailInfo.setPassword("123456");// 您的邮箱密码
mailInfo.setFromAddress(""); // 设置发送人邮箱地址
mailInfo.setSubject(title);
mailInfo.setContent(mailHtmlContent);
// 这个类主要来发送邮件
SimpleMailSender sms = new SimpleMailSender();
//sms.sendTextMail(mailInfo); // 发送文体格式
sms.sendHtmlMail(mailInfo); // 发送html格式
其他相似问题

我要回帖

更多关于 python 发送邮件 的文章

 

随机推荐