Тормозит отправка писем в php (sendmail)
Недавно настраивал домашний сервер, и понадобилось мне там протестировать отправку почты. Но вот беда, при запросе страницы, которая отправляет почту вылезала 500 ошибка.
Проблема
Начал смотреть, в чём же дело. В логах php-fpm ничего интереного нет, в логах nginx видно, что php-fpm upstream отваливает по таймауту.
1 |
2013/04/18 15:28:01 [error] 6928#0: *1409 upstream timed out (110: Connection timed out) while reading response header from upstream, client: xx.xx.xx.xx, server: , request: "POST /page.php HTTP/1.1", upstream: "fastcgi://127.0.0.1:9010", host: "site.ru", referrer: "http://site.ru" |
И тут мне в голову пришла идея заглянуть в syslog. Там то я и увидел интересные строчки:
1 2 |
Sep 9 18:53:20 mega sm-msp-queue[1453]: My unqualified host name (mega) unknown; sleeping for retry Sep 9 18:54:20 mega sm-msp-queue[1453]: unable to qualify my own domain name (mega) -- using short name |
Ага, начал грешить в сторону sendmail. Пробую перезапустить его командой:
1 |
sudo service sendmail restart |
и вижу подтверждение своей догадки.
1 2 3 4 |
andrey@mega:/home/andrey# sudoservice sendmail restart sudo: unable to resolve host xyz.xyz * Restarting Mail Transport Agent (MTA) sendmail andrey@mega:/home/andrey# |
Ага!
Решение
Дело оказалось в имени сервера. После того, как поставил вот такое имя сервера (с точкой) – всё заработало как надо.
1 |
127.0.0.1 localhost localhost.localdomain mega mega.foobar |