550 maximum allowed line length is 998 octets, got 1014
电子邮件被退回时出现此错误。exim 中是否有设置可以解决此问题?
尝试用谷歌搜索但找不到任何解决方案。
答案1
你得到的错误是基于RFC 2822/RFC 5322(网络信息格式):
2.1.1. 行长度限制
本规范对一行中的字符数有两个限制。每行字符不得超过 998 个字符,并且应不超过 78 个字符(不包括 CRLF)。
998 个字符的限制是由于许多发送、接收或存储 IMF 消息的实现中的限制,这些实现根本无法处理一行超过 998 个字符。
2.2.3. 长标头字段
每个标题字段在逻辑上都是一行字符,由字段名称、冒号和字段主体组成。但为了方便起见,并为了处理每行 998/78 个字符的限制,标题字段的字段主体部分可以拆分为多行表示;这称为“折叠”。一般规则是,只要本规范允许折叠空格(而不仅仅是 WSP 字符),就可以在任何 WSP 之前插入 CRLF。
由于每个像样的电子邮件客户端都可能符合此标准,如果您甚至不认为这是一个问题并尝试解决它,那么您可能不会拒绝垃圾邮件以外的任何东西。
如果您在字段中有一长串地址CC:
,您的电子邮件客户端应该在 988 个字符的行长限制之前添加换行符。由于平均电子邮件地址长度是 23 个字符,即每行大约有 43 个地址。如果您需要向这么多收件人发送电子邮件,请考虑使用BCC:
字段(或具有选择退出可能性的邮件列表软件)。
答案2
显然进出口银行已经设定了这个限制。这链接描述了如何修改
exim4.conf.template
以避免消息被拒绝。
只需添加IGNORE_SMTP_LINE_LENGTH_LIMIT=1
到模板并重新生成配置文件即可update-exim4.conf