
我有一個網站,其中的網域使用外部郵件伺服器(由 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