如何在Node.js中设置配置sendmail?

时间:2018-09-12 02:54:47

标签: javascript node.js nginx sendmail

我只是在我的服务器nginx上安装sendmail。 我有项目nodejs。 因此,我使用smtp配置发送邮件。但是电子邮件仍然无法发送。

所以我用了sendmail。但是有人知道如何为sendmail设置配置吗? 这是我之前的配置: “严格使用”

const Env = use('Env')

module.exports = {
  /*
  |--------------------------------------------------------------------------
  | Connection
  |--------------------------------------------------------------------------
  |
  | Connection to be used for sending emails. Each connection needs to
  | define a driver too.
  |
  */
  connection: Env.get('MAIL_CONNECTION', 'smtp'),

  /*
  |--------------------------------------------------------------------------
  | SMTP
  |--------------------------------------------------------------------------
  |
  | Here we define configuration for sending emails via SMTP.
  |
  */
  smtp: {
    driver: 'smtp',
    pool: true,
    port: 2525,
    host: Env.get('MAIL_HOST'),
    secure: false,
    auth: {
      user: Env.get('MAIL_USERNAME'),
      pass: Env.get('MAIL_PASSWORD')
    },
    maxConnections: 5,
    maxMessages: 100,
    rateLimit: 10
  }
}

1 个答案:

答案 0 :(得分:0)

您的配置有多个可能的故障点,而您的问题中没有足够的数据。您可以尝试按以下顺序搜索问题:

  1. 确保已将sendmail配置为侦听指定端口上的连接。端口号2525非常不常见,sendmail的默认端口为25和587。
  2. 使用telnet或类似程序检查您是否可以连接到sendmail端口,它没有被防火墙阻止,并且sendmail在连接时向您发送HELO / EHLO问候。
  3. 确保将MAIL_HOST和其他环境变量设置为正确的值,并且对脚本可见。
  4. 使用某些本地邮件客户端通过具有MAIL_USERNAME和MAIL_PASSWORD凭据的sendmail发送电子邮件。如果未发送电子邮件,请检查sendmail日志中可能的错误。确保正确配置了sendmail中的授权。
  5. 尝试通过脚本发送电子邮件,并检查sendmail日志中的错误。

您可能想在serverfault寻求一些有关步骤1、4和5的帮助