我一直在尝试在目前托管在Google云平台上的简单博客应用程序上设置django联系表单。 该应用程序似乎在本地工作,它发送电子邮件并将最终用户重定向到已完成的页面,但是当我将其推送到生产服务器时,它会尝试发送大约30秒的电子邮件然后超时,我会被重定向到404 。 我检查了我的nginx错误和访问日志以及我的gunicorn日志,似乎一个枪炮工人在30秒后超时,因此404.最初我认为这是因为我的端口587被锁定在Google云端然而,即使我打开所述端口,它仍然会失败。
我的settings.py:
Emailer EMAIL_HOST = "send.one.com"
EMAIL_PORT = "587"
EMAIL_HOST_USER = "postman@email.co.uk"
EMAIL_HOST_PASSWORD = "password"
DEFAULT_FROM_EMAIL = "postman@email.co.uk"
SERVER_EMAIL = "postman@email.co.uk"
我试图通过使用TLS来运行它 EMAIL_USE_TLS = True 但没有成功。 有没有人遇到过这个问题?
答案 0 :(得分:3)
App Engine会阻止这种打开套接字的连接。
如果您想在Google App Engine上发送邮件,则有2个选项:
直接使用Google App Engine提供的Mail API,它将是一套处理Google App Engine邮件的API,供参考,您可以在此处查看:Google App Engine Mail API for Python
对GAE Mail API使用Django包装器,如rocket_engine
中内置的那个或独立的。
如果您正在执行此操作,您可以按照与Django相同的方式执行电子邮件发送,它更像是可以将插件安装到您的Django项目中,那么您的设置将无需任何更改