如果电子邮件收件人域名 == 本地域,则电子邮件将被退回

如果电子邮件收件人域名 == 本地域,则电子邮件将被退回

我有一个网站,其域名使用外部邮件服务器(由 mail.mydomain.com 和 MX 记录定义)。示例电子邮件地址为[电子邮件保护]每当服务器向该用户发送通知电子邮件时,它都会被退回,并显示如下消息:

to=、relay=local、delay=0.03、delays=0.02/0.01/0/0.01、dsn=5.1.1、status=bounced(未知用户:“johndoe”)

因为它认为目标是 localhost 而不是 mail.mydomain.com。重新配置 Postfix 可以解决这个问题吗?如果可以,具体需要更改/添加哪些指令?如果不可以,解决这个问题的最佳方法是什么?

编辑- 添加了 postconf -n 输出:

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
inet_interfaces = all
mailbox_size_limit = 0
mydestination = mydomain.com, localhost.localdomain, localhost
myhostname = mydomain.com
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost = 
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
smtpd_tls_cert_file = /etc/ssl/certs/ssl-cert-snakeoil.pem
smtpd_tls_key_file = /etc/ssl/private/ssl-cert-snakeoil.key
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes

谢谢。

答案1

通过改变解决问题:

mydestination = mydomain.com, localhost.localdomain, localhost

到:

mydestination = www.mydomain.com, localhost.localdomain, localhost

答案2

鉴于这一点已被多次查看,有效的答案适用于静态域,但在后缀语法方面令人困惑。

对于将电子邮件发送到与主机名相同的域的地址的外发服务

mydestination = $myhostname, localhost.$mydomain, $mydomain

是个推荐配置字符串

然而,上述链接没有考虑到问题提出的情况。假设您的服务器名为www.sporting.events,您需要配置:

myhostname = www.sporting.events
mydomain = www.sporting.events

获取未转发的邮件local

相关内容