Postfix

後綴,dovecot 新使用者域是 localhost 而不是我的域

  • March 12, 2017

我在 Ubuntu 16.04 上使用 postfix、dovecot 和 roundcube。

當創建新使用者(unix)然後登錄到roundcube時,當我發送電子郵件時,接收者將從 user@localhost 而不是 user@mysomain.com 收到郵件

如果我在命令提示符下使用 sendmail -t,電子郵件會以正確的方式發送

user@mydomain.com

問是因為我最近成功破壞了我的後綴,現在我害怕觸摸任何文件:))所以這是一個圓形立方體,鴿舍或後綴問題,我可以從哪裡糾正它。

先感謝您,

@sebix 感謝您的詢問,已解決,以防萬一有人需要:

這是圓形問題,預設情況下,將考慮所有使用者@localhost 用於登錄目的(config.inc.php)

所以不要觸摸這條線,因為它只用於登錄

$config['default_host'] = 'localhost';

相反,添加缺少的這一行

$config['mail_domain'] = '%n';

其中 % 可以是多個選項

// %n - hostname ($_SERVER['SERVER_NAME'])
// %t - hostname without the first part
// %d - domain (http hostname $_SERVER['HTTP_HOST'] without the first part)
// %s - domain name after the '@' from e-mail address provided at login screen
// For example %n = mail.domain.tld, %t = domain.tld

就我而言, %n 沒問題,因為我有 myserver.com(不是 mail.myserver.com)

令人困惑的問題是,一旦使用者登錄 Roundcube,身份就會在找到時儲存在 MySQL 中,因此您必須手動編輯。對於新使用者(在 %n 修改後)一切都會好起來的。

就這樣 :)

引用自:https://serverfault.com/questions/837777