Итак, дано: Debian lenny, Exim4, PHP 5.3.
Нужно настроить правильную работу функции mail() в PHP, чтобы та отсылала почту через smtp.masterhost.ru.
Делается всё просто.
1. Добавляем в конфиг /etc/exim4/update-exim4.conf.conf :
dc_eximconfig_configtype='internet'
dc_smarthost='smtp.masterhost.ru::25'
2. В /etc/exim4/passwd.client добавляем данные для авторизации:
smtp.masterhost.ru:OurMail@OurDomain.ru:OurMailPassword
3. В /etc/email-addresses добавляем :
root: OurMail@OurDomain.ru
root – пользователь, с которого будет вызываться функция mail. Если у нас www-data, то указываем его.
4. Шлём письма в PHP:
$headers = "Content-type: text/html; charset=\"utf-8\"\n";
$headers .= "From: Our good php script \n";
mail("OurRecepient@OurDomain.ru", "Test", "Hi! This is a <b>test mail</b>", $headers);
Таким образом, почта приходит в UTF-8 в формате text/html.