最近工作遇到 smtp 发送邮件的一个坑

2015-12-09 14:29:13 +08:00
 liuxu
工作是关于邮件的,前台用 php ,后台调用的公司自己用 C 写的服务端,在用后台发送时一直发送不成功。整个一套下来,从 js 追到 php ,然后查脚本,最后查到服务端 C 源码,结果是后台发送端在读完邮件的文件后 send 给 smtp 后,没有用"."来结束发送。。巨坑。
2015 次点击
所在节点    程序员
6 条回复
initialdp
2015-12-09 14:42:37 +08:00
标准应该使用“\r\n.\r\n ”来标识发送结束吧。
liuxu
2015-12-09 14:48:22 +08:00
@initialdp 是的,我就说那个意思,其实用".\r\n"也可以成功,因为前面是读的文件,标准还是"\r\n.\r\n"稳妥。
GeekGao
2015-12-09 14:56:11 +08:00
建议还是改写成接口吧,不然这个问题以后还会被新人遇到的
raysmond
2015-12-09 15:05:02 +08:00
还是 webapi 的方式好用
cheng007
2015-12-09 21:46:58 +08:00
SMTP 协议很简单吧
julyclyde
2015-12-11 21:42:17 +08:00
foxmail 从古代版本到现代版本都不遵守这个,结果逼得绝大多数正经的 smtp 服务器都能兼容这个错误了
你的邮件服务器这么犟?

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/242260

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX