Используя nginx/fcgi/django, у меня есть сообщения формы, которые дают тайм-аут шлюза 504.

StackOverflow https://stackoverflow.com/questions/2234696

Вопрос

У меня есть приложение, которое использует Django с FCGI на nginx.Я использую сторонние приложения, такие как django-регистрация Джеймса Беннета и django-сообщения из проекта Pinax.Оба этих приложения имеют формы, которые отправляются и сохраняют данные в базу данных, а затем перенаправляются на новый URL-адрес.

Моя проблема, похоже, заключается в том, что метод .save() в любой из форм в этих приложениях вызывает тайм-аут шлюза 504 при отправке форм.Все данные сохраняются в базе данных, как и должно быть, однако, похоже, ни один из них никогда ничего не возвращает в приложение после сохранения формы.

Я провел регистрацию в различных точках кода, ошибок нет.Это как если бы методы save() формы или моделей, к которым эти формы подключены, просто никогда ничего не возвращают — ни ошибку, ни что-то еще.

Из-за такого отсутствия деталей ответ может быть для меня мечтой, но просто подтолкнуть в правильном направлении или способ более полно диагностировать проблему было бы фантастически.

Это было полезно?

Решение 2

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

Другие советы

Обычно ошибка 504 в nginx возникает из-за тайм-аута между nginx и процессом fastcgi.Возможно, вы захотите взглянуть на настройки nginx и обновить fastcgi_read_timeout параметр?

Ваш журнал ошибок nginx обычно содержит немного больше информации о том, почему что-то не работает.Если вы используете дистрибутив *nix, он обычно находится в «/var/log/nginx/error.log».

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top