Redmine基础 邮件配置

这里写图片描述

Redmine中关于邮件配置,本文进行了简单整理和总结设定相关的信息以及注意事项。并使用smtp和async_smtp两种方式在163和139的邮箱中均作验证可用。

redmine版本

项目 详细信息
redmine版本 3.3

虽然只在3.3上进行了验证,但是其他版本应该也大体差不多。

设定文件

不同版本的文件目录虽然略有不同,但是相对目录大体一致:

配置文件名称 配置文件目录
configuration.yml config

如果没有的话,一般会有一个configuration.yml.example的文件,copy之后在此基础上修改即可, 而且没有此文件时,redmine的“配置”/“邮件通知”设定tab页面会显示没有邮件设定文件相关信息,需要设定之后,重启redmine.

支持方式

除了smtp方式,redmine所支持的邮件方式如下

项番 方式 说明
No.1 smtp 普通smtp方式
No.2 sendmail 普通sendmail方式
No.3 async_smtp 异步smtp方式
No.4 async_sendmail 异步sendmail方式

在yml文件中的设定项目为:delivery_method

具体设定

上述四种方式,至于具体设定,以smtp为例,具体项目说明如下

项番 项目 说明
No.1 address 邮箱服务器地址,比如163为smtp.163.com,139为:smtp.139.com
No.2 port 服务器端口,缺省为25,163和139均为如此,其他邮箱需要自行确认
No.3 domain 需要指定HELO domain的时候需要设定,一般可设可不设
No.4 user_name 邮件服务器需要认证时需要,一般必填,此邮箱也成为redmine发信时所使用的邮箱,此处一般使用邮箱名称即可。
No.5 password 邮箱密码
No.6 authentication 认证方式,支持plain/login/cram_md5方式。plain:明文密码。login:base64编码。cram_md5:md5方式。
No.7 enable_starttls_auto 检测STMP服务器是否使用STARTTLS并使用,缺省为true.
No.8 openssl_verify_mode 使用TLS时,OPENSSL方式设定

至于详细的设定项目,如果使用smtp,yml文件中的设定项目则为:smtp_settings,如果是异步smtp,则为aysnc_smtp_settings.
关于邮箱的设定基本此两项(delivery_method和具体设定)即可。

设定实例

如下smtp的两种方式用163和139的邮箱方式,均亲测可用。

smtp普通方式

  email_delivery:
    delivery_method: :smtp
    smtp_settings:
      address: "smtp.163.com"
      port: 25
      authentication: :login
      domain: 'smtp.163.com'
      user_name: '邮箱[email protected]'
      password: '你的密码'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

smtp异步方式

  email_delivery:
    delivery_method: :async_smtp
    async_smtp_settings:
      address: "smtp.163.com"
      port: 25
      authentication: :login
      domain: 'smtp.163.com'
      user_name: '邮箱[email protected]'
      password: '你的密码'
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

设定生效

configuration.yml文件修改之后,一般要重新启动redmine才能起作用。

连接确认

在设定redmine之前,最好确认一下是否在redmine所在环境之上邮件收发是否能正常动作,自己写个程序也行,也可以使用telnet,以下以163为例进行确认。

连接163的STMP服务器

返回220表示OK

/usr/src/redmine # telnet SMTP.163.com 25
220 163.com Anti-spam GT for Coremail System (163com[20141201])
  • 1
  • 2
  • 3

发送HELO,确认连接状况,返回250确认OK

HELO SMTP.163.com
250 OK
  • 1
  • 2

通过这样的确认至少确认了很多低级问题比如防火墙穿透不过去或者干脆根本都连不上网等等方面是否有问题。

邮件测试

redmine的配置->邮件通知页面,设定之后点击“发送测试邮件”即可确认
这里写图片描述
如果失败又不是异步方式设定,此处会提示具体错误,如果邮件发件人地址如果跟configuration.yml中设定不同也会提示出错。

邮件测试

成功之后,会收到从设置的邮箱发来的如下内容的一封mail.

This is a test email sent by Redmine.
Redmine URL: http://localhost:3000/
________________________________________
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://hostname/my/account
  • 1
  • 2
  • 3
  • 4
  • 5

注意事项

基本上很多问题都是由如下问题产生:

项番 详细信息
No.1 格式问题:yml文件自身格式,空格缩进等要求严格,建议在理解基础上拷贝,因为拷贝时经常造成空格异位等问题。另外引号和特殊字符等等也均有可能造成问题
No.2 发送邮件侧的是否能够发送,建议自己写个程序验证一下,或则直接使用本文提示的telnet的方式,然后再确认是不是redmine设定的问题。

参考文章

http://www.redmine.org/projects/redmine/wiki/EmailConfiguration
http://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://www.cnblogs.com/captainbed

猜你喜欢

转载自www.cnblogs.com/firsttry/p/10238876.html