Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Errno 111 Connection refused with a very basic password reset

Novice to django here, currently trying to implement a password recovery using the admin password_reset function but I'm getting an error. From what I've read about other people with similar problems its some kind of port/socket issue, but I'm not quite sure how to go about changing or fixing it. I should mention that I'm running this through a virtual ubuntu, not sure if that has anything to do with it.

Environment:

Request Method: POST
Request URL: http://127.0.0.1:8000/admin/password_reset/
Django Version: 1.1.4
Python Version: 2.6.6
Installed Applications:
['django.contrib.auth',
 'django.contrib.contenttypes',
 'django.contrib.sessions',
 'django.contrib.sites',
 'homework.events',
 'django.contrib.admin']
Installed Middleware:
('django.middleware.common.CommonMiddleware',
 'django.contrib.sessions.middleware.SessionMiddleware',
 'django.contrib.auth.middleware.AuthenticationMiddleware')


Traceback:
File "/usr/local/lib/python2.6/dist-packages/django/core/handlers/base.py" in   get_response
  99.                     response = callback(request, *callback_args, **callback_kwargs)
File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/views.py" in password_reset
  116.             form.save(**opts)
    File "/usr/local/lib/python2.6/dist-packages/django/contrib/auth/forms.py" in save
  136.                 t.render(Context(c)), None, [user.email])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_mail
  407.                         connection=connection).send()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send
  281.         return self.get_connection(fail_silently).send_messages([self])
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in send_messages
  179.         new_conn_created = self.open()
    File "/usr/local/lib/python2.6/dist-packages/django/core/mail.py" in open
  144.                                            local_hostname=DNS_NAME.get_fqdn())
    File "/usr/lib/python2.6/smtplib.py" in __init__
  239.             (code, msg) = self.connect(host, port)
    File "/usr/lib/python2.6/smtplib.py" in connect
  295.         self.sock = self._get_socket(host, port, self.timeout)
    File "/usr/lib/python2.6/smtplib.py" in _get_socket
  273.         return socket.create_connection((port, host), timeout)
    File "/usr/lib/python2.6/socket.py" in create_connection
  561.     raise error, msg

Exception Type: error at /admin/password_reset/
Exception Value: [Errno 111] Connection refused

I know I have to (probably) change something with the ports, just not sure how to do so to fix the error. Also, I apologise for the poor editing of the code. Thanks in advance.

like image 552
zoombini Avatar asked Feb 03 '23 18:02

zoombini


2 Answers

The password reset function attempts to send an email.
You get this error because it tried to connect to an email server, but the connection was refused.

like image 68
John Mee Avatar answered Feb 05 '23 09:02

John Mee


The password_reset function requires an smtp server to send the reset email. You can either setup an smtp server to send the mail or choose other function that don't need seeding email like set_password function.

like image 44
stanzgy Avatar answered Feb 05 '23 08:02

stanzgy