我希望动态生成电子邮件内容,并使用来自EC2服务器的Python从Gmail帐户发送电子邮件。我在localhost上运行时工作正常,但是当我在EC2上运行相同的代码时,它不起作用......
这是我的代码:
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
from email.mime.text import MIMEText
from email.mime.image import MIMEImage
msg = MIMEMultipart()
part = MIMEApplication(file("<pathtopdf>").read())
part.add_header('Content-Disposition', 'attachment; filename="<nameofpdf.pdf>"')
msg.attach(part)
msg['From'] = "<username>@gmail.com"
msg['To'] = "<username>@gmail.com"
msg['Subject'] = "Hello PDF"
import smtplib
server = smtplib.SMTP('smtp.gmail.com',587) #port 465 or 587
server.ehlo()
server.starttls()
server.ehlo()
server.login(<login info params>)
server.close()
在没有使用Amazon SES的情况下,有没有这样做?我只需要根据客户的要求发送电子邮件,我只需根据客户输入生成一个快速的PDF,并通过他们指定发送给的客户发送电子邮件给他们...这是一个非常简单的操作我必须跳过的篮筐令人沮丧。
答案 0 :(得分:0)
答案 1 :(得分:0)
您必须在出站规则中启用端口587.