我正在尝试使用本指南configurationpostfix / courier / mysql / SquirrelMail安装程序,但在尝试发送电子邮件时出现以下错误:
451 4.3.0 <[email protected]>: Temporary lookup failure
/var/log/mail.log条目:
Mar 16 11:37:42 myserver postfix/smtpd[12750]: connect from localhost[127.0.0.1] Mar 16 11:37:42 myserver postfix/smtpd[12750]: warning: connect to mysql server localhost: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) Mar 16 11:37:42 myserver postfix/smtpd[12750]: warning: mysql:/etc/postfix/mysql-virtual_email2email.cf lookup error for "[email protected]" Mar 16 11:37:42 myserver postfix/smtpd[12750]: NOQUEUE: reject: RCPT from localhost[127.0.0.1]: 451 4.3.0 <[email protected]>: Temporary lookup failure; from=<[email protected]> to=<[email protected]> proto=ESMTP helo=<webmail.mydomain.com> Mar 16 11:37:42 myserver postfix/smtpd[12750]: lost connection after RCPT from localhost[127.0.0.1] Mar 16 11:37:42 myserver postfix/smtpd[12750]: disconnect from localhost[127.0.0.1]
我已经重新检查了/etc/postfix/mysql-virtual_email2email.cf文件,并且configuration正确。
user = mypostfixusername password = mypass dbname = mail query = SELECT email FROM users WHERE email='%s' host = 127.0.0.1
我的MySQL服务器正在运行,我可以使用mysql -u mypostfixusername -p连接到它,并且可以运行查询。 我也可以用SquirrelMaillogin。
/etc/postfix/mysql-virtual_email2email.cf的最后一行应该是
hosts = 127.0.0.1
代替
host = 127.0.0.1
如果我们指定127.0.0.1后缀应尝试通过TCP连接,但你的logline说,后缀无法连接到/var/run/mysqld/mysqld.sock ,所以它不能识别host = 127.0.0.1行。 希望有所帮助。