使用 PHP 在 ubuntu 上通过本地主机发送电子邮件(可以通过外部邮件服务器)

使用 PHP 在 ubuntu 上通过本地主机发送电子邮件(可以通过外部邮件服务器)

我在笔记本电脑上安装了 Ubuntu 桌面版 12.04 64 位。我使用以下命令安装了一个简单的 Web 服务器:

apt-get install apache2

apt-get install php5

apt-get install mysql-server

对于我想要本地托管的 sugar crm,一切都运行良好。但是发送电子邮件确实很费劲,我尝试了 exim4 sendmail 和 postfix。

我进行了很多配置并尝试,所以我想告诉你我尝试如何使它工作只会引起混乱。

我是 ubuntu 和命令行的新手,非常感谢任何有关发送邮件的指导!

答案1

我安装了 ssmtp:

sudo apt-get install ssmtp

并使用了我的 Gmail 凭证:

gksu gedit /etc/ssmtp/ssmtp.conf

# Config file for sSMTP sendmail
#
# The person who gets all mail for userids < 1000
# Make this empty to disable rewriting.
#root=postmaster
root=****@gmail.com

# The place where the mail goes. The actual machine name is required no
# MX records are consulted. Commonly mailhosts are named mail.domain.com
#mailhub=mail
mailhub=smtp.gmail.com:587

AuthUser=****@gmail.com
AuthPass=****
UseTLS=YES
UseSTARTTLS=YES

# Where will the mail seem to come from?
#rewriteDomain=
rewriteDomain=gmail.com

# The full hostname
#hostname=MyMediaServer.home
hostname=****@gmail.com

# Are users allowed to set their own From: address?
# YES - Allow the user to specify their own From: address
# NO - Use the system generated From: address
FromLineOverride=YES

现在一切正常!

答案2

请按照以下步骤发送邮件本地主机Ubuntu/Linux通过邮箱:-

为此你需要安装msmtp在 Linux/Ubuntu 服务器上。

Gmail 使用https://(它是超文本安全的)所以你需要安装ca-certificates

~$ sudo apt-get install msmtp ca-certificates

安装msmtp包将需要几秒钟。

现在您必须创建配置文件(msmtprc) 使用,gedit 编辑器。

~$ sudo gedit /etc/msmtprc

现在您必须在 gedit 中复制并粘贴以下代码(使用上述命令创建的文件

defaults
tls on
tls_starttls on
tls_trust_file /etc/ssl/certs/ca-certificates.crt

account default
host smtp.gmail.com
port 587
auth on
user [email protected]
password MY_GMAIL_PASSSWORD
from [email protected]
logfile /var/log/msmtp.log

不要忘记更换我的 GMAIL 号码和你的 ”gmail 帐号“ 和我的 GMAIL 密码和你的 ”gmail 密码“ 在上面的代码行中。

现在创建msmtp.log

~$ sudo touch /var/log/msmtp.log

你必须让任何人都可以读取此文件

~$ sudo chmod 0644 /etc/msmtprc

现在启用 sendmail 日志文件为可写

~$ sudo chmod 0777 /var/log/msmtp.log

您的 gmail SMTP 配置现已准备就绪。现在发送一封测试电子邮件,如下所示

~$ echo -e "Subject: Test Mail\r\n\r\nThis is my first test email." |msmtp --debug --from=default -t [email protected]

请检查您的 Gmail 收件箱。

对于使用 php 发送邮件,请检查https://stackoverflow.com/questions/33969783/phpubuntu-send-email-using-gmail-form-localhost

相关内容