【发布时间】:2020-06-13 10:35:47
【问题描述】:
我正在使用 CPanel 中的 Codeigniter,我的代码已经发送了一封邮件,但是当它到达接收者时,主机名会显示在发件人上。 我尝试了一些问题的答案:Change the sender name php mail instead of sitename@hostname.com,但在 Codeigniter 中,它们不起作用。
这是我的代码:
$config = Array(
'protocol' => 'ssmtp',
'smtp_host' => 'ssl://ssmtp.googlemail.com',
'smtp_port' => 465,
'smtp_user' => 'mail@domainiwant.com',
'smtp_pass' => 'password',
'mailtype' => 'html',
'charset' => 'iso-8859-1',
'useragent' => 'MY NAME',
);
$this->load->library('email', $config);
$this->email->set_newline("\r\n");
$this->email->from('mail@domainiwant.com', 'MY NAME');
$email_to = 'receiver@gmail.com';
$this->email->to($email_to);
$this->email->message('Message testing ...');
$this->email->send();
但是,正如我所说,当邮件到达收件人时,它们会显示主机名和完全不同的邮件地址,就像我放在 $config 上的邮件地址一样
我知道这只会设置the envelope sender,但我想将邮件地址设置为mail@domainiwant.com,而不是使用somemail@host.com.ex接收邮件
【问题讨论】:
-
您有 SMTP 服务器吗?请向服务提供商索取。
-
根据 CI 自己的文档,
$config['protocol']应该设置为smtp,而不是ssmtp。由于ssmtp不是配置中可接受的值,您的代码可能默认为mail设置,这将尝试使用您自己的服务器作为发件人而不是使用您的SMTP 设置来传递邮件。试试看,让我知道
标签: php codeigniter email header cpanel