Postfix зависает при отправке электронной почты
Если я пытаюсь отправить электронное письмо следующим образом, процесс зависает, и ничего не происходит:
>>> from django.core.management import setup_environ
>>> from cube import settings
>>> setup_environ(settings)
'cube'
>>> from django.core.mail import send_mail
>>> send_mail('Subject', 'Message', 'sender@domain.com', ['recepient@domain.com'], fail_silently=False)
Тем не менее, выполнение telnet для порта 25 работает просто отлично
$ telnet localhost 25
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
^]
telnet>
и вот это на всякий случай
$ netstat -a | grep :smtp
tcp 0 0 *:smtp *:* LISTEN
tcp 0 0 localhost:smtp localhost:44932 ESTABLISHED
tcp 0 0 localhost:44932 localhost:smtp ESTABLISHED
tcp 0 0 localhost:smtp localhost:60964 ESTABLISHED
tcp 0 0 localhost:60964 localhost:smtp ESTABLISHED
tcp 0 0 localhost:37247 localhost:smtp FIN_WAIT2
tcp 1 0 localhost:smtp localhost:37247 CLOSE_WAIT
tcp 9 0 localhost:smtp localhost:37245 CLOSE_WAIT
Я запускаю Ubuntu 10.04 и Python 2.6.5
Я не знаю, где искать дальше, чтобы понять, что не так. Пожалуйста, помогите мне. Спасибо.
1 ответ
Ваш почтовый сервер не работает нормально. При подключении к нему с помощью telnet
Вы должны увидеть приветственное сообщение следующего содержания:
220 your.server.name ESMTP Postfix
(Вы можете проверить приветствие, которое вы должны увидеть, запустив postconf smtpd_banner
.)
Вы этого не понимаете, поэтому почтовый сервер работает неправильно. send_mail
вероятно висит в ожидании этого начального сообщения.
Перезапустите Postfix и посмотрите в /var/log/mail.*
лог-файлы; там может быть ключ к пониманию того, почему это не работает.