2010-11-23 5 views
0

Cher Tout le monde, je a récemment lancé un site et je vois beaucoup d'utilisateurs inactifs dans la page d'administration de django. J'utilise actuellement django-registration, ce qui prend beaucoup de temps pour configurer et envoyer des emails (send_mail). Quelles sont les solutions alternatives à cela?utilisateurs inactifs d'enregistrement django débordement

Comment puis-je conserver une connexion e-mail active dans django dans différents threads? Mettre dans les paramètres ne semble pas être une bonne idée

Répondre

0

Si vous êtes sûr que le problème est causé par django fait que crée la connexion à chaque fois. Vous pouvez installer smtp local sans auth et vous y connecter via localhost. C'est beaucoup plus rapide.

0

Si l'installation smtp local est une sorte de problème pour vous (par exemple, vous utilisez bureau Windows), vous pouvez utiliser un libs python: bibliothèque de base ou de Twisted.

0

Cette fork of django-registration s'intègre à django-mailer qui utilise des processus d'arrière-plan pour envoyer du courrier au lieu de le traiter lors de la requête HTTP. Le courrier est envoyé par une commande de gestion:

$ /usr/local/bin/python2.5 manage.py send_mail 

calendrier Vous cron pour exécuter cette commande régulièrement, par exemple tous les 5 minutes. Cela signifie un délai avant que l'utilisateur ne reçoive son e-mail de confirmation, mais cela résoudra les problèmes causés par les délais d'attente.

Cependant, je ne l'ai jamais rencontré ce genre de problème avec SMTP avant, donc à moins que votre trafic est remarquable (et même alors, vraiment!) Vous ne devriez pas rencontrer ce problème. Assurez-vous que votre configuration SMTP ne présente pas d'autres problèmes. Au minimum, vous pouvez jouer avec la commande send_mail de django dans la coquille, ainsi que d'exécuter simplement quelque chose comme

$ date | mail [email protected] 

Dans le shell bash pour le serveur.

J'ai peur que tout suppose que vous utilisez un serveur * nix ou similaires. Si vous utilisez une machine Windows, vous devrez vous pencher sur d'autres options ou, à tout le moins, implémenter cela différemment.

Questions connexes