使用SMTP服务器通过电子邮件发送附件

时间:2014-09-03 08:22:34

标签: php email

我对使用带附件的外部SMTP服务器发送电子邮件的工作方式感到有些困惑。

我们说我的网站上有一个允许附件上传的联系表格,我使用的是外部SMTP服务器,例如Amazon SES或Gmail。

是否需要先将文件上传到我的服务器,然后将电子邮件附件指向该文件路径,还是将其转换为base64并在SMTP正文中发送?

问题: 文件是直接发送还是首先需要上传到我的服务器?

1 个答案:

答案 0 :(得分:3)

  1. 浏览器必须向HTTP服务器发出HTTP请求,并在其中嵌入文件。
  2. HTTP服务器读取请求并将其交给PHP。
  3. PHP读取请求并从中提取文件(由于PHP的实现方式,这将涉及将其存储为临时文件,将在PHP程序运行完毕后删除)
  4. 您的PHP程序需要从文件中读取数据并将其作为附件嵌入电子邮件中
  5. 生成的电子邮件(包括附件)通过SMTP
  6. 传递

    无需在服务器上存储文件。