用openssl在命令行发邮件,遇到的错误信息,
错误:451 Bare line-feed; see http://haraka.github.io/barelf/
意思是只收到了换行符。
实际是不同命令行中对键盘<ENTER>敲下后的输入符号有不同的响应,有的只输入换行符。
命令行发邮件的结束方式,邮件服务器在交互时候,一般会提示 ,大多是<CR><LR>.<CR><LF>。
大多数时候敲建<ENTER>,终端会一起把<CR><LF>(回车和换行)同时输入。
出现这个错误的原因是回车<CR>不能被识别到,只能识别到<LF>,邮件就不会被发送出去。
解决的方法:用敲键盘<CTRL-V>再敲<ENTER>来输入<CR><LF>
敲<CTRL-V>,会显示^M
即敲键盘:
<CTRL-V><ENTER>.<CTRL-V><ENTER>
显示是:
^M
.^M
250 xxxxxxx
服务器返回,250 xxxxxxx
250表示服务器已经成功接收到你要发邮件信息。