2014-02-18 3 views
1

Я пытался создать контактную форму django в простом приложении для ведения блогов, которое в настоящее время размещено на платформе Google cloud. Приложение работает локально, оно отправляет сообщение электронной почты и перенаправляет конечного пользователя на завершенную страницу, однако, когда я нажимаю его на производственный сервер, он пытается отправить электронное письмо примерно за 30 секунд, а затем истекает время, и я перенаправляюсь на 404. Я проверил свои ошибки nginx и журналы доступа, а также журнал ружейного оружия, и кажется, что после 30 секунд рабочий-оружейник истекает через 30 секунд, а значит, и 404. Сначала я думал, что это происходит, потому что мой порт 587 заблокирован в Google Однако даже когда я открываю порт, он все еще не работает.Отправка электронной почты из контактной формы Django при переадресации Google App Engine на 404

Мой settings.py:

Emailer EMAIL_HOST = "send.one.com" 
EMAIL_PORT = "587" 
EMAIL_HOST_USER = "[email protected]"  
EMAIL_HOST_PASSWORD = "password" 
DEFAULT_FROM_EMAIL = "[email protected]" 
SERVER_EMAIL = "[email protected]" 

Я попытался запустить его через TLS с помощью EMAIL_USE_TLS = True но не успех. Кто-нибудь сталкивался с этой проблемой раньше?

+0

Является ли «Emailer» опечаткой или вы случайно присоединяетесь к предыдущей строке комментария? –

ответ

3

App Engine блокирует такое подключение, которое открывает разъем.

У вас есть 2 варианта, если вы хотите отправить почту на Google App Engine:

  1. Прямое использование почты API предоставляемые Google App Engine, это будет набор API, который обрабатывает рассылки на Google App Engine , для справки вы можете посмотреть здесь: Google App Engine Mail API for Python

  2. Используйте оболочку Django для API GAE Mail, например, встроенную в rocket_engine или автономную.

Если вы делаете это, вы можете выполнить отправку сообщений электронной почты в том же пути, что делает Django, это больше похоже на плагин может быть установленным в ваш проект Django, тогда ваши настройки будут работать без каких-либо изменений.

+1

Чтобы ответить на ваш комментарий, это была опечатка! Кроме того, я перечитал документацию по GAE и понял, что мне нужно будет использовать их API GAE, чтобы иметь возможность отправлять электронные письма. Спасибо за вашу помощь, но я забыл обновить вопрос. :) – Hevlastka