小编xel*_*nod的帖子

Django不发送有关500错误的消息

好的.所以我真的不满意我可能会发布另一个重复的问题,但没有相关的东西似乎对我有帮助.

所以问题是我想收到包含服务器错误消息的电子邮件(500),而我没有.

我知道什么:

  1. 在我的本地机器上一切正常工作:我设置时收到我的消息DEBUG = False.他们中有太多,说实话.
  2. django.core.mail.mail_admins()./manage.py shell生产服务器上的内部调用工作正常:我收到我的电子邮件,因为我send_email()从视图中获取了那些
  3. 我已经DEBUG = False在我的生产服务器上设置了
  4. 我试图通过弄乱我的主页模板丢失括号以及将assert 0字符串放入我的主视图来获取电子邮件.我正在使用我的500.html渲染.
  5. 以下是settings.py中的电子邮件设置:

    EMAIL_HOST = 'smtp.yandex.ru'
    EMAIL_HOST_USER = 'noreply@<project-name>.ru'
    EMAIL_HOST_PASSWORD = '<password>'
    EMAIL_PORT = 587
    EMAIL_USE_TLS = True
    DEFAULT_FROM_EMAIL = 'noreply@<project-name>.ru'
    SERVER_EMAIL = 'noreply@<project-name>.ru'
    
    Run Code Online (Sandbox Code Playgroud)

  6. 以下是settings.py中的日志记录设置:

    LOGGING = {
        'version': 1,
        'disable_existing_loggers': False,
        'filters': {
            'require_debug_false': {
                '()': 'django.utils.log.RequireDebugFalse',
            }
        },
        'handlers': {
            'mail_admins': {
                'level': 'ERROR',
                'filters': ['require_debug_false'],
                'class': 'django.utils.log.AdminEmailHandler'
            }
        },
        'loggers': {
            'django': {
                'handlers': ['mail_admins'], …
    Run Code Online (Sandbox Code Playgroud)

python email django

5
推荐指数
1
解决办法
1768
查看次数

标签 统计

django ×1

email ×1

python ×1