SmtpMailer: Maximum execution time exceeded
- VasaB
- Člen | 8
Zdravím, snažím se emailem odeslat jako přílohu dva soubory, každý maximální velikosti 2MB. Pokud je velikost každého z nich pod 1MB, vše ok.
Pokud mají oba soubory více než 1MB, dojde vždy k chybě ‚Maximum
execution time of 120 seconds exceeded‘.
Laděnka mi zobrazuje chybu ve třídě SmtpMailer na řádku 161:
159: private function write($line, $expectedCode = NULL, $message = NULL)
160: {
161: fwrite($this->connection, $line . NMail::EOL);
162: if ($expectedCode && !in_array((int) $this->read(), (array) $expectedCode)) {
163: throw new NSmtpException('SMTP server did not accept ' . ($message ? $message : $line));
164: }
165: }
Skript běží na localhostu, ale využívám smtp na serveru, ze kterého pak web poběží. Usuzuji, že se nějak protáhne komunikace s smtp serverem. K nastavení ani logu smtp serveru přístup nemám.
Je možné nějak přesněji zjistit, na čem přesně se to tak dlouho zasekne?
- Patrik Votoček
- Člen | 2221
Chtělo by to asi napíchnout se na komunikaci se SMTP serverem.
Btw s největší pravděpodobností se ty ~4MB nestihnou na tvém připojení za 120sec „uploadnout“.
- VasaB
- Člen | 8
Jo, v tom bude zřejmě ta chyba. Soubory nahrávám přes formulář a přikládám k emailu. A nedošlo mi, že když se soubory nahrají, tak na localhost. A potom se musí až při posílání uploadovat z localhostu na smtp server a na tom se to zasekne.
Při umístění skriptu na server (na kterém je i smtp server) to odesílá i ~10MB.
Díky moc za radu.