【发布时间】:2014-10-27 16:10:40
【问题描述】:
我对使用带有附件的外部 SMTP 服务器发送电子邮件的工作原理有点困惑。
假设我的网站上有一个允许上传附件的联系表单,并且我使用外部 SMTP 服务器,例如 Amazon SES 或 Gmail。
是否需要先将文件上传到我的服务器,然后将电子邮件附件指向该文件路径,还是将其转换为 base64 并在 SMTP 正文中发送?
问题:文件是直接发送还是需要先上传到我的服务器?
【问题讨论】:
-
每当您使用文件上传并将其发布到服务器时,它将被上传到临时目录中,通常在基于 unix 的系统上为
/var/tmp。我建议在 Unix 上为 SMTP 邮件使用邮件框架,比如 PHPMailer,因为它在处理套接字连接方面做得很好,并且支持发送附件。附件可以直接从tmp目录发送。