Przy wysyłaniu dużej liczby maili nginx zwraca błąd 504 Gateway Timeout

Odpowiedz Nowy wątek
2014-12-21 02:55
Caspy
0

Witam, mam taki problem, postawiłem sobie serwer nginx na debianie a na nim skryptem php wysyłam maila do pojedyńczej osoby za pomocą funkcji mail(). Sytuacja jest taka, że gdy rozpoczynam wysyłanie, to po jakimś czasie na stronie ukazuje się błąd Nginx 504 Gateway Timeout, a mimo to po jakimś czasie wiadomość mailowa dociera do swojego adresata. Jak można uniknąć tego timeoutu w taki sposób, że po 2-3 sekundach strona normalnie by sie przeładowała bez żadnych timeout'ów?

Pozostało 580 znaków

2014-12-21 09:44
0

Zapisywać maile w kolejce w bazie i wysyłać w osobnym procesie, sprawdzając cronem co 5 minut czy jest jakiś mail do wysłania.

edit: kolejny wątek ma mieć lepszy temat, ten poprawiłem, następny znajdziesz w koszu


edytowany 1x, ostatnio: dzek69, 2014-12-21 09:45

Pozostało 580 znaków

2014-12-21 11:38
Caspy
0

Ale ja nie powiedziałem, że wysyłam na wiele adresów mail. Wykonuję tylko jedno wywołanie mail, a ono powoduje timeout gdzieś po minucie, a wiadomość i tak dociera gdzieś po paru minutach, jak to naprawić, czy to coś z configiem mam zmienić?

Pozostało 580 znaków

2014-12-21 12:07
0

Zacznij od niewysyłania maili "gołą" funkcją mail, która powoduje wiele innych problemów (przedwczoraj bodajże pisałem, że wspominam o tym na forum po raz milionowy, ten jest milion pierwszy). Użyj biblioteki phpMailer.

A maile TAK CZY TAK powinieneś wysyłać w tle!


Pozostało 580 znaków

Odpowiedz
Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0