with readthedocs password latest forgot allauth python django email nginx django-allauth

python - readthedocs - django-allauth: ¿cómo modificar la dirección de correo electrónico de confirmación?



django allauth twitter (2)

Django obtiene el nombre de host y el puerto de los encabezados HTTP. Agregar proxy_set_header Host $http_host; en su configuración nginx antes de las opciones proxy_pass .

Estoy ejecutando django en el puerto 8001, mientras que nginx está manejando las tareas del servidor web en el puerto 80. Vistas de proxies de nginx y algunas llamadas de API REST a Django. Estoy usando django-allauth para el registro / autenticación del usuario.

Cuando un nuevo usuario se registra, django-allauth envía al usuario un correo electrónico con un enlace para hacer clic. Como django se está ejecutando en el puerto 8001, el enlace se ve como http://machine-hostname:8001/accounts/confirm-email/xxxxxxxxxxxxxx

¿Cómo puedo hacer que la URL parezca http://www.example.com/accounts/confirm-email/xxxxxxxx ?

¡Gracias!


Tuve el mismo problema, y ​​también encontré que la solución de ferrangb no tuvo ningún efecto en los correos salientes de Allauth. La respuesta de mr_tron me llevó a la mitad, pero tuve que hacer un poco más:

1) En la configuración nginx, poner

proxy_set_header Host $http_host

antes de las opciones proxy_pass.

2) En settings.py , agregue el nombre de dominio a ALLOWED_HOSTS . También agregué la versión www de mi nombre de dominio, ya que recibí tráfico a ambas direcciones.

ALLOWED_HOSTS = [''127.0.0.1'', ''example.com'', ''www.example.com'']

Y, por supuesto, reinicia nginx y gunicornio o lo que sea que esté sirviendo a tu Django. Con el primer paso, pero no el segundo, todas las visitas al sitio fueron errores instantáneos de 400 (a menos que DEBUG = True en settings.py ).