Ryf*_*lex 6 email django dns amazon-web-services django-email
我正在尝试在AWS实例上设置Django以通过我的主网站的服务器(非AWS)发送电子邮件,而不是需要使用外部邮件服务,如Mandrill,Amazon SES ......等
我首先设置主服务器的DNS记录,将子域指向aws实例的弹性IP,例如:
mail1.website.com - > 1.1.1.1
我提交了一个反向DNS记录设置请求,将我的AWS实例的弹性IP指向子域,他们将其设置为例如:
1.1.1.1 - > mail1.website.com
现在设置了反向DNS记录mail1.website.com应该能够在django中用来发送电子邮件而不将它们标记为垃圾邮件.
https://docs.djangoproject.com/es/1.9/topics/email/#smtp-backend
使用以下内容是否足够?
EMAIL_HOST = 'mail1.website.com'
DEFAULT_FROM_EMAIL = 'test.website.com'
Run Code Online (Sandbox Code Playgroud)
如果我需要提供电子邮件用户/密码/端口,可以将其设置为使用特定电子邮件登录,aws_no_reply@website.com但然后通过电子邮件发送test@website.com或者我是否必须将smtp设置设置为根电子邮件地址
No_reply电子邮件:
EMAIL_HOST = 'mail1.website.com'
EMAIL_HOST_USER = 'aws_no_reply@website.com'
EMAIL_HOST_PASSWORD = 'mypasshere'
EMAIL_PORT = 465
DEFAULT_FROM_EMAIL = 'test.website.com'
Run Code Online (Sandbox Code Playgroud)
或根:
EMAIL_HOST = 'mail1.website.com'
EMAIL_HOST_USER = 'root'
EMAIL_HOST_PASSWORD = 'mypasshere'
EMAIL_PORT = 465
DEFAULT_FROM_EMAIL = 'test@website.com'
Run Code Online (Sandbox Code Playgroud)
我不确定我是否理解您为什么要尝试这样做,但如果您当前的电子邮件服务器运行正常,并且您希望能够使用它来中继来自 AWS 实例的电子邮件,我只需设置一个 VPN AWS 和您当前的网络之间,并允许您的 AWS 实例以这种方式发送电子邮件。您没有将电子邮件服务器用作外部中继,因此送达能力不应改变。
但实际上,正确的答案是使用 SES 发送电子邮件。只要您不做任何滥用行为,就应该不会出现交付问题。
编辑:即使您为 AWS 实例公共 IP 设置了反向 DNS,您提到的特定例外情况(SPF_SOFTFAIL、RDNS_DYNAMIC 和 HELO_DYNAMIC_IPADDR)也可能不会消失 - 您仍然从已知的“动态”IP 地址池中提取 - AWS 发布了它们的 IP 地址这里列出了 IP 地址- 我怀疑人们是否会费心检查其中一小部分是否已正确设置。
设置 SPF 以允许 AWS 代表您发送非常简单。
| 归档时间: |
|
| 查看次数: |
216 次 |
| 最近记录: |