825 Star 2.8K Fork 1.3K

Discuz / DiscuzX

Merged
!324 邮件发送Bug修复与优化

Jiaxun_Yang:mail_fixes Discuz:master

Jiaxun_Yang Created on: 2019-12-31 14:27
缺陷/BUG
增强/enhancement

这个PR修复了两个Bug,一是部分SMTP服务器会发送多行超长的欢迎信息,现在的代码不能处理这种情况,会将超长信息的后半部分视作AUTH的回复导致误认为AUTH失败,这里加了个循环来“吃掉”超长信息。二是根据RFC2821标准,SMTP必须使用CRLF来分行,但是现在的代码允许用户使用其他换行方法。这里我们让使用其他换行方法的配置仅针对原生sendmail有效,SMTP全部强制使用CRLF。

同时我们也做了其他的一些修改来提高邮件送达率,避免被打低分判断成SPAM。首先是当遇到非预期回复时发送一个QUIT主动断开连接,以避免占用服务器连接数导致被服务器拒绝。同时按约定俗称的规范将HOST作为SMTP HELO的Hostname,并且将Sender设置为Discuz!。我们也规范了message-id的域名,使用邮箱地址的域名而不是HOST。

14 comments, 5 participants 110066 flygoat 1578917944 1182630 gududeweidao 1578945378 1773794 laozhoubuluo 1594507411 5247157 oldhuhu 1578983196

Show action logs Hide action logs
oldhuhu merged Pull Request 2020-01-07 21:12
oldhuhu check passed 2020-01-07 21:12
Jiaxun_Yang force push code 2020-01-05 13:42
Jiaxun_Yang force push code 2020-01-05 11:47
Jiaxun_Yang force push code 2020-01-03 16:04
Jiaxun_Yang updated description 2019-12-31 14:29
Jiaxun_Yang set priority to Serious 2019-12-31 14:28
Jiaxun_Yang added label enhancement 2019-12-31 14:28
Jiaxun_Yang added label bug 2019-12-31 14:28
Jiaxun_Yang assigned reviewer 湖中沉 2019-12-31 14:27
Jiaxun_Yang assigned reviewer oldhuhu 2019-12-31 14:27
Jiaxun_Yang assigned reviewer monkeye 2019-12-31 14:27
Jiaxun_Yang assigned reviewer Discuz! 2019-12-31 14:27
Jiaxun_Yang assigned reviewer LooTan 2019-12-31 14:27
Jiaxun_Yang assigned reviewer comsenz-service 2019-12-31 14:27
Jiaxun_Yang assigned reviewer DiscuzX 2019-12-31 14:27
PHP
1
https://gitee.com/Discuz/DiscuzX.git
git@gitee.com:Discuz/DiscuzX.git
Discuz
DiscuzX
DiscuzX

Search

102255 3a0e046c 1850385 102255 7aaa926c 1850385