redmine的邮件发送功能还是很有用的。
像项目有更新啦,任务分配啦,都能邮件发送的相关责任人。
我自己在linux服务器上安装并启动了redmine后,邮件一直发送了不了。
查了网上的资料,都是讲修改下配置文件就可以了,他们没错,只是没有讲全。
下面是我整理的一个redmine邮件发送功能设置的一个完整流程。

1. sendmail安装与检查

linux机器上安装的redmine要能发送邮件,先得是本机的sendmail功能是正常的。

查看sendmail进程是否已正常启动:
$ ps auxf|grep sendmail
ps auxf|grep sendmail
root     22272  \_ grep sendmail
root      8352  sendmail: accepting connections
smmsp     8362  sendmail: Queue runner@01:00:00 for /var/spool/clientmqueue

如果进程未启动,
可以试下:
$ sevice sendmail start
如果仍未启动,则需要安装sendmail

安装sendmail
可以很简单的安装方式:
$apt-get install sendmail
也可以是很复杂的方式:
http://blog.csdn.net/trassion/article/details/8274479

检查邮件发送功能
sendmail安装并启动正常后,就可以检查一下它的邮件发送功能了。
$ vim mail.txt
hello world!
【保存并退出】
$ mail -s "mail from sendmail" youremail@163.com < mail.txt

然后去查看邮箱:youremail@163.com
中是否收到刚发的邮件,如果收到了,则表示发送正常;
如果没有,则可以查看邮件日志:
$ tail /var/log/maillog

看是什么原因导致的,排除问题直到邮件能正常发送了。

2. 163邮箱配置

很多网上的资料都是使用163的smtp服务。
实际上,要使用163邮箱的smtp服务得专门开通才行。
开通服务在:
设置->邮箱设置->POP3/SMTP/IMAP下。

开通SMTP服务,163要求设置“客户端授权密码",
这个密码是要用到redmine的邮件发送配置的,所以要注意。

3.配置redmine

我用的redmine是2.6.4 和3.0.1版本,这两个是现在(2015年5月)最新的版本。
它们的邮件配置文件在安装目录下的:
$ vim apps/redmine/htdocs/config/configuration.yml
... 
# default configuration options for all environments
default:
  # Outgoing emails configuration
  # See the examples below and the Rails guide for more configuration options:
  # http://guides.rubyonrails.org/action_mailer_basics.html#action-mailer-configuration
  #email_delivery:
  # delivery_method: :async_smtp
  #  smtp_settings:
  #  address: smtp.163.com
  #    port: 25
  #    domain: smtp.163.com
  #    authentication: :login
  #    user_name: 你的邮箱@163.com
  #    password: 客户端授权密码(不是邮箱登录密码)
...
# 下面还有很多邮箱的配置,不用管
...
# specific configuration options for production environment
# that overrides the default ones
production:
    delivery_method: :async_smtp
    smtp_settings:
      tls: false
      address: smtp.163.com
      port: 25
      domain: smtp.163.com
      authentication: :login
      enable_starttls_auto: true
      user_name: 你的邮箱@163.com
      password: 客户端授权密码(不是邮箱登录密码)
【保存并退出】
注意:是用"客户端授权密码",否则在邮件发送会提示未授权的错误。

重启redmine的服务
$ ./ctlscript.sh restart

检查redmine的邮件发送功能:
在 "管理->配置->一般"标签下:
将“主机名称”改成 :
IP/redmine
【保存】

在 "管理->配置->邮件通知"标签下:
"邮件发送人地址"改成:
你的邮箱@163.com
再点右下角的"发送测试邮件"按键即可。

打完收功!

redmine邮件发送功能配置详解的更多相关文章

  1. Django 发送email配置详解及各种错误类型

    跟随Django Book的内容发送邮件不成功,总结一下需要配置好settings.py文件,还要注意一些细节. 1.在settings文件最后添加以下内容,缺一不可! EMAIL_HOST= 'sm ...

  2. Log4j配置详解(转)

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  3. Log4J日志配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  4. Log.properties配置详解

    一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源)和Layouts(布局).这里可简单理解为日志类别,日志要输出的地方和日志以何种形式输出.综合使 ...

  5. log4j.properties配置详解(转)

    本篇文章转自http://it.oyksoft.com/log4j/ 非常感谢原创作者的辛勤编写与分享. 一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders ...

  6. commons-logging和Log4j 日志管理/log4j.properties配置详解

    commons-logging和Log4j 日志管理 (zz) 什么要用日志(Log)? 这个……就不必说了吧. 为什么不用System.out.println()? 功能太弱:不易于控制.如果暂时不 ...

  7. Maven使用笔记(四)pom.xml配置详解

    pom.xml文件配置详解 --声明规范 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" ...

  8. Hibernate4搭建Log4J日志管理(附Log4j.properties配置详解)

    1.首先加入slf4j的jar包,即slf4j-api-1.6.1.jar 在hibernate官网下载hibernate-release-4.2.2.Final.zip并解压,在hibernate- ...

  9. (转)Log4J日志配置详解

    http://www.cnblogs.com/ITtangtang/p/3926665.html 一.Log4j简介 Log4j有三个主要的组件:Loggers(记录器),Appenders (输出源 ...

随机推荐

  1. 【嵌入式开发板】8月终极暑促迅为Cortex-a9四核入门开发板

    核心板参数 尺寸 50mm*60mm 高度 连同连接器在内0.26cm CPU Exynos4412,四核Cortex-A9,主频为1.4GHz-1.6GHz 内存 1GB 双通道 DDR3(2GB  ...

  2. c# 参数传递

    c#类型有值类型与引用类型. 无论哪种类型的变量,作为方法的参数进行传递时,默认是以"值传递"方式来传递的. 传递给方法的形参,在执行时都会新创建一个局部变量,然后接受实参的值, ...

  3. Verilog (二) multiplexer and decoder

    1  mutiplexer 数据选择器 1)  one-bit wide 2-1 mux wire dout = sel? din1 : din0; // conditional continuous ...

  4. codeforces 477A A. Dreamoon and Sums(数学)

    题目链接: A. Dreamoon and Sums time limit per test 1.5 seconds memory limit per test 256 megabytes input ...

  5. Javascript 中的闭包和引用

    Javascript 中一个最重要的特性就是闭包的使用.因为闭包的使用,当前作用域总可以访问外部的作用域.因为Javascript 没有块级作用域,只有函数作用域,所以闭包的使用与函数是紧密相关的. ...

  6. 关于SVN版本分支合并的知识

    分支的合并类型 合并的工作是把主干或者分支上合并范围内的所有改动列出,并对比当前工作副本的内容,由合并者手工修改冲突,然后提交到服务器的相应目录里.如果当前工作副本是主干,则合并的范围是分支上的改动, ...

  7. java11-3 String类的获取功能

    String类的获取功能 int length():获取字符串的长度. char charAt(int index):获取指定索引位置的字符 int indexOf(int ch):返回指定字符在此字 ...

  8. unix文件操作函数

    1. fopen函数 #include <stdio.h> FILE *fopen(const char *path, const char *mode) 返回:文件顺利打开后,指向该流的 ...

  9. 实现Maya FEM节点

    准备实现FEM节点. 发现一种让自定义的Locator以及它的变换节点自动命名的方法.代码如下: void FEMSimulationNode::postConstructor() { MFnDepe ...

  10. nvl函数

    NVL(E1, E2)的功能为:如果E1为NULL,则函数返回E2,否则返回E1本身. 但此函数有一定局限,所以就有了NVL2函数. NVL2(E1, E2, E3)的功能为:如果E1为NULL,则函 ...