在自定义SMTP服务器上发送附件

在自定义SMTP服务器上发送附件,smtp,Smtp,我目前正在使用自己的SMTP服务器,我可以成功地从各种程序和网页(如Outlook、PHP和Pear Mail)发送电子邮件 我需要做的下一步是尝试通过SMTP服务器发送附件。我曾尝试在通过PHP向另一个SMTP服务器发送附件时对我的服务器进行LAN跟踪,我可以从客户端获得以下信息: DATA fragment, 661 bytes 我不确定这是否与附件有关 如果是,这只是告诉SMTP服务器文件的长度,然后我应该只在网络流中写入一个base 64编码字符串,并将其写入用于发送电子邮件的文件 谢

我目前正在使用自己的SMTP服务器,我可以成功地从各种程序和网页(如Outlook、PHP和Pear Mail)发送电子邮件

我需要做的下一步是尝试通过SMTP服务器发送附件。我曾尝试在通过PHP向另一个SMTP服务器发送附件时对我的服务器进行LAN跟踪,我可以从客户端获得以下信息:

DATA fragment, 661 bytes
我不确定这是否与附件有关

如果是,这只是告诉SMTP服务器文件的长度,然后我应该只在网络流中写入一个base 64编码字符串,并将其写入用于发送电子邮件的文件

谢谢你能提供的帮助

SMTP没有邮件“附件”的概念。电子邮件附件是邮件正文的一部分,在SMTP中,所有附件都在
数据
命令和数据结束指示符(“命令”)之间传输。见RFC 5321。请注意,SMTP中没有办法告诉服务器有多少数据将遵循
data
命令,尽管服务器有办法限制消息正文的大小(并且对数据结尾命令的回复可能是错误响应代码和指示发送了太多数据的消息)

您可以使用MIME标识邮件正文的不同部分,但邮件正文的创建和解释完全不在SMTP服务器的范围内。请参阅RFC 2045和RFC 2046,以及许多其他完善MIME规范的相关RFC(包括RFC2184、RFC2231、RFC5335、RFC6532、RFC2646、RFC3798、RFC5147、RFC6657)