Fórum Root.cz
Hlavní témata => Server => Téma založeno: krakonoš 07. 11. 2012, 21:39:13
-
jde na serveru nejak osetrit tato situace?
<?php
while(1)
mail(...);
?>
v php jsem na to neprisel, asi jen omezit dobu behu skriptu. Slo by to resit i na strane SMTP serveru? (postfix)
diky
-
Nevím o tom, že by to v PHP šlo. Je třeba to řešit na straně odesílajícího SMTP serveru. Zmiňovaný Postfix to umí, v /etc/postfix/main.cf hledej položky anvil_rate_time_unit (čas, po kterém se vynuluje počítadlo) a smtpd_client_message_rate_limit (kolik je možné v tomto limitu poslat mailů). Pokud chceš některé klienty z tohohle limitu vyjmout (náš automatický mailer může posílat, kolik chce), vyjmenuješ je do smtpd_client_event_limit_exceptions. Snad to takhle stačí.
-
pripadne udelat handler na mail funkci (takovy mensi override normalni funkce), nebo tu funkci rovnou zakazat
-
diky
toto jsem ted zkusil a funguje to, kdyz posilam z existujici schranky. Kdyz posilam z php pres mail(), tak je ten limit neucinny. Cim to muze byt ?
Nevím o tom, že by to v PHP šlo. Je třeba to řešit na straně odesílajícího SMTP serveru. Zmiňovaný Postfix to umí, v /etc/postfix/main.cf hledej položky anvil_rate_time_unit (čas, po kterém se vynuluje počítadlo) a smtpd_client_message_rate_limit (kolik je možné v tomto limitu poslat mailů). Pokud chceš některé klienty z tohohle limitu vyjmout (náš automatický mailer může posílat, kolik chce), vyjmenuješ je do smtpd_client_event_limit_exceptions. Snad to takhle stačí.
-
byl to nakonec problem v
smtpd_client_event_limit_exceptions (default: $mynetworks)
stacilo zmenit na prazdny retezec a limity fungujou i pro php