我在
linux中添加了一个名为“mailer”的用户.我只使用此用户发送外发邮件,而不是接收.为了使用以下SMTP信息发送外发邮件,我需要做什么?
$config['host'] = 'localhost'; $config['port'] = '25'; $config['secure'] = ''; //ssl or tls $config['auth'] = 'true'; $config['username'] = 'mailer'; $config['password'] = '******';
更新
有人请帮忙,我如何设置一个帐户通过SMTP发送邮件?
更新
我是否可以使用SSH信息作为用户名/密码来发送邮件?以上配置信息是通过SMTP使用PHPMailer.
更新
我运行测试通过PHPMailer发送电子邮件,邮件日志显示…
Aug 31 17:58:55 spireprod postfix/smtpd[14597]: disconnect from unknown[::1] Aug 31 17:58:55 spireprod postfix/smtp[14601]: DA1491BC1084: to=<email@gmail.com>,relay=gmail-smtp-in.l.google.com[74.125.95.27]:25,delay=0.48,delays=0.12/0.01/0.12/0.23,dsn=2.0.0,status=sent (250 2.0.0 OK 1283291935 gy42si22156132ibb.26) Aug 31 17:58:55 spireprod postfix/qmgr[941]: DA1491BC1084: removed
问题是我从未收到过它!
您是否测试过该帐户是否可以发送邮件?
有几种方法可以做到这一点,但最简单的方法是在您的邮件服务器上telnet到端口25(smtp)(从本地控制台尝试):
telnet localhost 25 Connected to localhost.localdomain (127.0.0.1). Escape character is '^]'. 220 myserver.com ESMTP Postfix EHLO test.com 250-myserver.com 250-PIPELINING 250-SIZE 10240000 250-VRFY 250-ETRN 250-STARTTLS 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN mail from: mailer@myserver.com 250 2.1.0 Ok rcpt to: test@testaddress.com 250 2.1.5 Ok DATA 354 End data with <CR><LF>.<CR><LF> Subject: Test Message Test . 250 2.0.0 Ok: queued as 97B7D7640D0
如果您看到所有250条OK消息并且您的消息通过测试地址,那么该帐户工作正常.
如果您收到错误,那么它将指示问题在配置中的位置.如果在MAIL FROM:命令之后出现错误,则根本不允许用户发送邮件.
如果在RCPT TO:命令后出现错误,则不允许用户将邮件发送到测试地址.
如果您在邮件正文后收到错误,或者邮件从未到达,请检查您的maillog文件.让另一个窗口显示maillog的实时视图非常有用 – tail -f / var / log / maillog将允许您查看邮件服务器发生的情况.跟踪事情时非常有用.
您还可以通过切换到邮件程序用户进行测试,并使用mail command发送测试消息 – 同时查看maillog以查看发生的情况.