文章内容
2018/2/12 10:39:28,作 者: 黄兵
454, b'Command not permitted when TLS active'
最近使用Flask发送163邮件的时候遇到了很多问题,前边根据报错提示,不断查询网络,现在问题已经解决,将问题记录下来,方便后人。
在配置发送邮件的时候报如下错误:
smtplib.SMTPResponseException: (454, b'Command not permitted when TLS active')
出现这个错误的原因是163邮箱不支持TLS,即使配置了MAIL_USE_TSL=flase,也会出现这个错误提示,最好的办法就是注释这段代码,错误代码如下:
# 163 mail config
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.163.com')
MAIL_PORT = int(os.environ.get('MAIL_PORT', '465'))
MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'false').lower() in \
['true', 'on', '1','false']
MAIL_USE_SSL = os.environ.get('MAIL_USE_SSL', 'true')
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
FLASKY_MAIL_SUBJECT_PREFIX = '[Flasky]'
FLASKY_MAIL_SENDER = 'Flasky Admin '
FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN') 修改代码如下:
# 163 mail config
MAIL_SERVER = os.environ.get('MAIL_SERVER', 'smtp.163.com')
MAIL_PORT = int(os.environ.get('MAIL_PORT', '465'))
#MAIL_USE_TLS = os.environ.get('MAIL_USE_TLS', 'true').lower() in \
#['true', 'on', '1']
MAIL_USE_SSL = os.environ.get('MAIL_USE_SSL', 'true')
MAIL_USERNAME = os.environ.get('MAIL_USERNAME')
MAIL_PASSWORD = os.environ.get('MAIL_PASSWORD')
FLASKY_MAIL_SUBJECT_PREFIX = '[Flasky]'
FLASKY_MAIL_SENDER = 'Flasky Admin '
FLASKY_ADMIN = os.environ.get('FLASKY_ADMIN') 注意上面的注释行。
最后附上163邮箱常见问题列表:企业退信的常见问题?
黄兵个人博客原创。
转载请注明出处:黄兵个人博客 - 454, b'Command not permitted when TLS active'
评论列表