有自己独立域名的,已经建好网站了,比如moneyslow.com,DNS托管在cloudflare
和客户沟通的话,用xxx@moneyslow.com 的邮箱比较好。
本文配置好后,可以用xxx@moneyslow.com 进行邮件收和发。
收的原理:cloudflare 配置邮件转发给gmail
发的原理:gmail建立个别名账号(xxx@moneyslow.com)
另外可以用第三方邮件发送服务resend.com来完成同样的功能,在文最后有说明
1、配置Cloudflare
选择自己的域名后,点击左侧的 Email,然后点击 Get started,开始设置邮件路由。
在页面上输入你想要设置的邮件地址,然后 action 选择 Send to Email,最后 Destination 里填入你自己的 Gmail 邮件地址,这里需要填写正确。
如果是第一次设置,则会发送一封邮件到 Gmail 里,点击验证链接之后回来,可以看到 status 已经改成了 verified,然后点击 continue。
最后一步则需要添加邮件路由的 DNS 地址,直接点击 Add records and enable。
后续如果再添加邮件地址可以直接在 Email Routing -> Route rules 里面直接添加地址。
2、配置Gmail
在配置Gmail 之前,需要在 Google 的Google App Passwords 中添加一个专属的密码,请记住这里的密码,后续在Gmail 中需要使用到。
这时在 Gmail 邮件右上角的齿轮按钮,然后点击 See all settings。
在 tab 页中选择 Accounts and Import。
在 Send mail as 这一栏里,添加 Add another email address。
第一步填入你自己的邮件昵称和地址,这里的地址是你在 Cloudflare 设置的地址,然后点击 Next Step。
这里填入 SMTP server 信息,这里需要填入的是 Gmail相关的信息。
SMTP server: smtp.gmail.com
port: 587
usernaem: 你的 Gmail 名称
password: 你在 app passwords 里创建的密码
会看到返回邮件等待验证邮件的界面, 最后在收件箱里收到验证邮件,点击之后就完成了配置。
现在开始就可以使用Gmail以自己的域名邮件(xxx@moneyslow.com)的名义来接发邮件了。
Gmail中点击发邮件,发件人就多个一个,可以选择了:
配置CF和Gmail的步骤其实很简单,按照流程一步步走下去就能成功,理论上来说,可以创建无数个域名邮件。
3、配置resend.com:
resend.com,这也是一个免费的服务。没有账号的话就自己注册一个。
选择左侧的API Keys,点击create API Key,名字随便填一个,下面两个保持默认,点击添加。
就会获得一个API Key,把它保存好。这里有一个域名,我们需要把域名也添加到这个网站上,就是刚才托管到Cloudflare的那个域名。
好,这一步是重点。这里给了3个DNS记录,我们需要把这个记录填回Cloudflare
回到cloudflare
我们回到resend,有一个按钮verify DNS records,我们点击一下,它检查我们刚才的配置是否正确。等校验完,页面标成绿色,那就配置完成了。
使用Python发邮件
# 先安装依赖
# pip install resend
import resend
# 这里换成自己的resend API Key
resend.api_key = "re_xxxxxxxxxxxxxxxxxxxxxxx"
params: resend.Emails.SendParams = {
# 发件人可以是自己域名下的任何一个人
"from": "asdf@你的域名",
"to": ["shery@moneyslow.com"],
"subject": "hi",
"html": "<strong>hello, world!</strong>"
}
email = resend.Emails.send(params)
print(email)
使用cURL发邮件
Authorization 换成自己的resend API Key,发件人可以是自己域名下的任何一个账号
curl -X POST 'https://api.resend.com/emails' \
-H 'Authorization: Bearer re_VxeNCEYF93xQKgKGFY32RxNK2D3J' \
-H 'Content-Type: application/json' \
-d $'{
"from": "Acme <asdfasdf@你的域名>",
"to": ["shery@moneyslow.com"],
"subject": "hello world",
"text": "it works!"
}'