Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 邮件管理员导致Django/Apache2的连接被拒绝?_Python_Django_Apache_Apache2 - Fatal编程技术网

Python 邮件管理员导致Django/Apache2的连接被拒绝?

Python 邮件管理员导致Django/Apache2的连接被拒绝?,python,django,apache,apache2,Python,Django,Apache,Apache2,我在Ubuntu后端使用Apache2服务器运行Django。在加载我的站点时,我得到一个500的内部服务器错误。Apache日志如下所示: AH00094: Command line: '/usr/sbin/apache2' mod_wsgi (pid=9568): Exception occurred processing WSGI script '/home/ubuntu/project/project/wsgi.py'. Traceback (most recent call l

我在Ubuntu后端使用Apache2服务器运行Django。在加载我的站点时,我得到一个500的内部服务器错误。Apache日志如下所示:

AH00094: Command line: '/usr/sbin/apache2'    
mod_wsgi (pid=9568): Exception occurred processing WSGI script '/home/ubuntu/project/project/wsgi.py'.
Traceback (most recent call last):
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site- packages/django/core/handlers/wsgi.py", line 177, in __call__
    response = self.get_response(request)
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 216, in get_response
    'request': request
File "/usr/lib/python2.7/logging/__init__.py", line 1178, in error
    self._log(ERROR, msg, args, **kwargs)
File "/usr/lib/python2.7/logging/__init__.py", line 1271, in _log
    self.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1281, in handle
    self.callHandlers(record)
File "/usr/lib/python2.7/logging/__init__.py", line 1321, in       callHandlers
    hdlr.handle(record)
File "/usr/lib/python2.7/logging/__init__.py", line 749, in handle
    self.emit(record)
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/utils/log.py", line 117, in emit
    self.send_mail(subject, message, fail_silently=True, html_message=html_message)
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/utils/log.py", line 120, in send_mail
     mail.mail_admins(subject, message, *args, connection=self.connection(), **kwargs)
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/core/mail/__init__.py", line 97, in mail_admins
    mail.send(fail_silently=fail_silently)
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/core/mail/message.py", line 292, in send
    return self.get_connection(fail_silently).send_messages([self])
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/core/mail/backends/smtp.py", line 100, in send_messages
    new_conn_created = self.open()
File "/home/ubuntu/.virtualenvs/api/local/lib/python2.7/site-packages/django/core/mail/backends/smtp.py", line 58, in open
    self.connection = connection_class(self.host, self.port, **connection_params)
File "/usr/lib/python2.7/smtplib.py", line 256, in __init__
    (code, msg) = self.connect(host, port)
File "/usr/lib/python2.7/smtplib.py", line 316, in connect
    self.sock = self._get_socket(host, port, self.timeout)
File "/usr/lib/python2.7/smtplib.py", line 291, in _get_socket
    return socket.create_connection((host, port), timeout)
File "/usr/lib/python2.7/socket.py", line 571, in create_connection
    raise err
error: [Errno 111] Connection refused

在我看来,调用
mail\u admins
方法时,这是一个错误。如果需要,我可以发布
wsgi.py
或其他文件的内容。我的应用程序不涉及明确的电子邮件使用,所以我不确定这是如何发生的。有什么想法吗?谢谢

Django有一个特殊的记录器,用于在发生500错误时向管理员发送电子邮件。查看更多信息

似乎抛出了一个异常,django试图通过向您发送电子邮件来传播该异常,但无法发送该电子邮件,因此您会收到另一个异常!真正异常的原因可能在无法发送电子邮件导致的异常之前。不过,我建议修复您的电子邮件配置,以便django能够在发生500个错误时向您发送这些电子邮件,这是一个很好的功能(也是像Sentry这样的完整异常跟踪程序的第一步)。如果由于某种原因您无法从该服务器发送电子邮件,我建议您至少将电子邮件后端()配置为控制台(
email\u backend='django.core.mail.backends.smtp.EmailBackend'
)或文件

EMAIL_BACKEND='django.core.mail.backends.filebased.EmailBackend' EMAIL_FILE_PATH='/tmp/app messages'#将其更改到正确的位置
这样邮件后端就可以工作。

谢谢!问题是
settings.py
文件中的电子邮件地址无效。默认值为
webmaster@localhost
,但显然ubuntu将其标记为“可疑”地址,因此我不得不修改它@瑟拉费姆 EMAIL_BACKEND = 'django.core.mail.backends.filebased.EmailBackend' EMAIL_FILE_PATH = '/tmp/app-messages' # change this to a proper location