尝试使用Ruby on Rails中的Exchange Server进行身份验证时出现此错误:
504 5.7.4无法识别的身份验证 型
config.action_mailer.raise_delivery_errors = true
config.action_mailer.perform_deliveries = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => "x.x.x.x",
:port => 25,
:user_name => "xxdomain\xxuser",
:password => "xxxxxx",
:authentication => :login,
:enable_starttls_auto => true
}
我尝试了各种配置设置组合,包括更改设置以使用“普通”身份验证,添加域,将enable_starttls_auto设置为true,false,并完全删除它,删除端口。没有任何效果。
有什么想法吗?
答案 0 :(得分:7)
以下内容来自链接:
1)将 ruby-ntlm gem添加到您的Gemfile中并运行捆绑安装。
2)将 NTLM SMTP 库添加到 config / environment.rb 文件中。
# Load the rails application
require File.expand_path('../application', __FILE__)
require 'ntlm/smtp'
# Initialize the rails application
RailsApp::Application.initialize!
3)设置环境文件以使用NTLM进行身份验证。
config.active_support.deprecation = :notify
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
:address => '<your-email-server>',
:domain => '<your-domain>',
:user_name => '<your-username>',
:password => '<your-unencrypted-password>',
:port => 25,
:authentication => :ntlm
****用您自己的***替换值