解决 Calibre 推送“500 Error: bad syntax”错误
很多朋友喜欢用 Calibre 推电子书,书伴也写过一篇文章《Calibre 使用教程之邮件一键推送电子书》详细介绍了如何使用 Calibre 推送电子书。但很长一段时间以来,在本文的信息中,反馈最多的问题之一是,在某些情况下,即使 SMTP 设置完全正确,推送时会抛出以下错误:
Log:
connect: (u’smtp.126.com’,465)
connect: (u’smtp.126.com’,465)
reply: ‘220 126.com Anti-spam GT for Coremail System (126com[20140526])\r\n’
reply: retcode (220); Msg: 126.com Anti-spam GT for Coremail System (126com[20140526])
connect: 126.com Anti-spam GT for Coremail System (126com[20140526])
send: ‘ehlo xxx—pc.DHCP HOST-xxxxxxxxx\r\n’
reply: ‘500 Error: bad syntax\r\n’ reply: retcode (500); Msg: Error: bad syntax
send: ‘helo xxx—pc.DHCP HOST-xxxxxxxxx\r\n’
reply: ‘500 Error: bad syntax\r\n’
reply: retcode (500); Msg: Error: bad syntax
这个问题给很多朋友带来了麻烦,虽然之前知道错误的提示bad syntax很明显,这是一个语法错误,但没有深入研究,也没有解决办法。今天有一个签名啦啦啦小伙伴提供了一个好消息,说找到了解决办法,这个方法叫markdown网友提供的。先感谢这两个小伙伴。
这个错误应该只出现在 Windows 系统。如果遇到这个错误,可以在控制版面”中点击“查看网络状态和任务”进入“网络与共享中心点击现在使用的网络连接,然后单击详细信息按钮网络连接详细信息”中看到“连接特定 DNS 后缀本项(如下图所示)的值应与上述错误报告信息中的红色文本相似,该值中的空格是发送错误的原因。
▲ 值中含有空格,导致发信错误
当我们知道原因时,我们找到了解决方案。我们只需要修改这个值,使它不再包含空间。具体步骤如下:控制版面”中点击“查看网络状态和任务”进入“网络与共享中心点击当前使用的网络连接,点击网络连接的属性按钮,双击Internet 协议版 4(TCP/IPv4)在此项目中,点击高级按钮,切换到DNS标签,标签,此连接的 DNS 后缀”修改为 HOST
或清空,然后依次确认保存。
▲ 修改此连接的 DNS 后缀”
最后重新进入 Calibre 通过邮件共享设置,重新测试发送邮件,应正常发送。
——————-