Redmine win 平台下 Redmine 邮件设置问题

virtuallife@163.com · 2012年06月04日 · 17 次阅读

日前在 win 下安装了 redmine,但在邮件设置 (邮件提醒) 功能上一直未能成功生效.

安装完成后只修改过 C:\Program Files\BitNami Redmine Stack\apps\redmine\config\configuration.yml 配置文件关于邮件服务器的那一段,如下:

default configuration options for all environments

Default: # Outgoing emails configuration (see examples above) email_delivery: delivery_method: :smtp smtp_settings: tls: true address: zhmail.XXX.com
port: 25 domain: zhmail.XXX.com authentication: :login user_name: "user@XXX.com" password: "XXXX" enable_starttls_auto: true

但修改后 redmine 未出正常启动.表现为: 前台 web 显示: Proxy Error The proxy server received an invalid response from an upstream server. The proxy server could not handle the request GET /redmine/.

Reason: Error reading from remote server

服务器上查看 redmine\log ,有信息如下:

  • Mounting Rails at /redmine... Your Redmine configuration file located at C:/Program Files/BitNami Redmine Stack/apps/redmine/config/configuration.yml is not a valid YAML file and could not be loaded.

若把以上配置文件关于邮件的那段全注释掉,remine 是可以正常启动运作 (当然,邮件功能是不能用)

尝试参考 [url=http://bbs.scmroad.com/thread-25203-1-1.htmlRedmine] 邮件设置 [/url] ,但没发现可以修复问题的地方.

[i=s] 本帖最后由 laofo 于 2012-6-4 17:24 编辑

你的 tls:true 这行是不是行首少一个空格,应该和 address 平行才对。

下面是我的配置,如图

下面是我的配置,如图

太神奇了, 把这个对齐后 (也保存了),重起 redmine 后是能正常访问了. 但访问到邮件配置那一页时, 提示:邮件参数尚未配置,因此邮件通知功能已被禁用。 请在 config/configuration.yml 中配置您的 SMTP 服务器信息并重新启动以使其生效。

这是 ruby 解析 yml 配置文件造成的。要求必须按照格式对其。否则它就认为你的 tls 和 smtp_settings 是同一级的了。

你在按照我的配置好了,试试。

我的意思是,我已经按照例子改好那个配置文件 (已经格式对齐),但进入"配置"--"邮件通知"的页面时,其提示如下:

邮件参数尚未配置,因此邮件通知功能已被禁用。 请在 config/configuration.yml 中配置您的 SMTP 服务器信息并重新启动以使其生效。

但我已经在那 yml 的配置文件中已经配置了相关信息...

能否把 tls: true 改为 false 然后把下面三行注释掉,试试?也许你的服务器不需要验证就可以

authentication: :login user_name: "user@XXX.com" password: "XXXX"

[i=s] 本帖最后由 virtuallife 于 2012-6-9 17:09 编辑

按照 laofo 的指引已经修改了配置文件,redmine 平台可以正常启动.但进入管理"邮件发送通知"时,一直提示: "邮件参数尚未配置,因此邮件通知功能已被禁用。 请在 config/configuration.yml 中配置您的 SMTP 服务器信息并重新启动以使其生效。"

最后实在找不到还可以到哪去修改配置而"激活邮件发送通知"功能,无奈之下选择重新安装 redmine~

重装时,开始打算是覆盖安装 (手动删掉 config/configuration.yml, 打算重装时会新生成一个),但是 [b][color=Red] BitNami 版本的 redmine 却不能在原目录中重装 [/b],会提示"目录非空,请另外选择安装路径"而退出. 一怒之下,就全新安装了.

全新安装时,依提示配置"邮件发送通知".安装完成后该功能能正常启动,只是测试发送邮件时提示出错.过程如下:

  1. 默认配置文件中的 authentication: :plain ([color=Red] 不知道啥是 plain ) 会提示 [b] 504 5.7.4 Unrecognized authentication type [/b] 估计是认证方式错误, [b] 修改为 authentication: :login [color=Red] [/b] 后错误提示变成 [b] 535 5.7.3 Authentication unsuccessful [/b]. 估计是帐号与密码错误导致校验失败

  2. 按安装过程的提示,填写发件人地址为: "user@XXX.com" (带上@XXX.com), 而生成的配置文件中也自动带上了这一信息, 会在配置文件的邮件配置项中有 user_name: "user@XXX.com" 一行, 把"@xxx.com"删除后,即只保留邮件的用户名 , 配置行变成 [b] user_name: "user"[color=Red] [/b] , 成功通过发送邮件测试. 成功解决 redmine 邮件通知问题.

而很多网上配置邮件的例子中的 写法都是 user_name: "user@xxx.com"(包括 laofo 提供的例子), 而我实际的配置中却是只写用户名就行,[b] 不知道是否与不同企业的邮件服务器配置有关. [/b]

最后,附上最终的邮件配置项: default: # Outgoing emails configuration (see examples above) email_delivery: delivery_method: :smtp smtp_settings: tls: false address: zhmail.XXX.com port: 25 domain: zhmail.XXX.com

authentication: :plain

authentication: :login user_name: "user" password: "password"

最后,感谢 laofo 的指点~

我的没有要求验证,我把认证那行都去掉了。我们的邮件系统是 exchange

估计这个和邮件系统的设置有关。谢谢分享。

需要 登录 后方可回复。