Я недавно установил сайт Django 1.7.3 на своем сервере Ubuntu 12.04 с использованием Apache и mod_wsgi. Everythink отлично работает, кроме отправки почты. Я не понимаю, почему это не работает, поскольку я использовал ту же конфигурацию (порт, хост и т. Д.) На предыдущем веб-сайте PHP, и это сработало. Так что это должно быть что-то, что происходит от Python. Код и отправка электронной почты также работали локально.554 Ошибка почты SMTP Django
В моем settings.py
файле я написал мой SMTP хостинга конфигурации:
EMAIL_HOST = 'SSL0.OVH.NET'
EMAIL_PORT = 587
EMAIL_HOST_USER = '[email protected]'
EMAIL_HOST_PASSWORD = 'mypassword'
А вот моя контактная функция:
def contact(request):
if request.method == 'POST':
form = ContactForm(request.POST)
if form.is_valid():
subject = form.cleaned_data['subject']
message = form.cleaned_data['message']
sender = form.cleaned_data['sender']
recipients = ['[email protected]']
try:
send_mail(subject,message,sender, recipients)
return redirect('myapp:index')
except BadHeaderError:
return HttpResponse('Invalid header found.')
else:
form = ContactForm()
return render(request, 'myapp/form.html', {'form': form})
(я получаю ту же ошибку с send_mail('hello','a simple text message', '[email protected]', ['[email protected]'])
)
Мое сообщение об ошибке:
SMTPDataError at /contact/
(554, b'mail server permanently rejected message (#5.3.0)')
Request Method: POST
Request URL: http://mywebsite.com/contact/
Django Version: 1.7
Exception Type: SMTPDataError
Exception Value: (554, b'mail server permanently rejected message (#5.3.0)')
Exception Location: /usr/lib/python3.2/smtplib.py in sendmail, line 761
Python Executable: /usr/bin/python
Python Version:3.2.3
Python Path:
['/opt/.virtualenvs/my_env/lib/python3.2/site-packages/distribute-0.6.24-py3.2.egg',
'/opt/.virtualenvs/my_env/lib/python3.2/site-packages/pip-1.1-py3.2.egg',
'/var/www/mywebsite',
'/opt/.virtualenvs/my_env/lib/python3.2/site-packages',
'/usr/lib/python3.2',
'/usr/lib/python3.2/plat-linux2',
'/usr/lib/python3.2/lib-dynload',
'/usr/local/lib/python3.2/dist-packages',
'/usr/lib/python3/dist-packages']
Большое спасибо за помощь!
UPDATE Я получил успешные результаты, используя Gmail в качестве SMTP-сервера, так что проблема исходит от OVH? (но это странно, потому что с теми же настройками для одной и той же учетной записи электронной почты OVH у меня нет проблем с веб-сайтом PHP на том же сервере). Я связался с ними и буду поддерживать вас.
Возможно, ваш сервер видит сообщение как спам (ссылка: http://e-pyfan.com/content/SMTPDATAERROR1/en/). –
Еще одна настройка для поиска здесь: https://groups.google.com/d/msg/django-users/Cy606otv3C0/ivb5Ws9yLqgJ –
Найти решение? –