Я настраиваю новый веб-сервер, и мне нужно отправить электронные письма из моих PHP-скриптов. Большинство сообщений следует отправлять с использованием SMTP-протокола mandrill, а некоторые - «напрямую» с моего сервера в почтовые службы. Я зарегистрировал учетную запись на mandrill и настроил сервер postfix в соответствии с этот руководство. Я создал / etc / postfix / sasl_passwd и отредактировал файл main.cf. Я установил relayhost на mandrill SMTP.
relayhost = [smtp.mandrillapp.com]
Если я попытаюсь отправлять сообщения, когда postfix настроен таким образом, все сообщения будут отправлены с использованием SMTP-протокола mandrill. Я попробовал, и все работает. Но, как я уже сказал, мне нужно отправлять несколько сообщений напрямую. Я определяю, какие электронные письма следует отправлять с использованием SMTP, а какие напрямую, путем установки разных адресов отправителя («от»). В упомянутом мной руководстве я обнаружил, что для того, чтобы делать то, что мне нужно, мне нужно использовать опцию sender_dependent_relayhost_maps и удалить значение relayhost.
Я использую следующую конфигурацию
relayhost =
sender_dependent_relayhost_maps = хэш: / etc / postfix / relayhost_maps
Я создал / etc / postfix / relayhost_maps, и это выглядит так
mail@mydomain.com [smtp.mandrillapp.com]
Теперь все сообщения должны отправляться напрямую, за исключением сообщений с mail@mydomain.com, которые должны отправляться с использованием внешнего SMTP. Проблема в том, что я пытаюсь отправлять сообщения с этой конфигурацией - все сообщения отправляются напрямую (я вижу это в Gmail, когда получаю).
Я попытался поместить в / etc / postfix / relayhost_maps разные SMTP-хосты, разные адреса электронной почты, но все сообщения по-прежнему отправляются напрямую.
Пожалуйста, помогите мне решить эту проблему.