Я новичок в Postfix, Dovecot и имею только базовые знания о маршрутизации почты.
Существует сервер, который должен получать электронную почту для различных почтовых ящиков с неограниченным количеством доменов. ( info@example.com , joe@blah.com , support@example.com , shmoe@foo.com - их тысячи.) Мне нужно обрабатывать только несколько электронных писем как обычные ящики IMAP, остальные электронные письма должны обрабатываться php-скриптом, фактически пересылаться в настоящий почтовый ящик, размещенный сторонней организацией.
Итак, info@example.com обрабатывается как обычный почтовый ящик, хранящийся локально, IMAP, но joe@shmoe.com перенаправлен на joeshmoe@gmail.com.
Не совсем понимаю, как реализовать такую логику. Может быть, я могу использовать Postfix + Mysql со списком почтовых ящиков для пересылки? Список является динамическим
Или, может быть, какая-то противоположная схема: входящие электронные письма сначала обрабатываются php-скриптом, а некоторые передаются по конвейеру в Postfix?
Здесь нужна помощь ..
Если единственное, что может делать ваш php-скрипт, - это пересылка почты, вам это вообще не нужно. Вы можете добиться того же с помощью стандартных функций постфикса.
Упомянутое руководство по хостингу виртуальных доменов находится здесь http://www.postfix.org/VIRTUAL_README.html
. . По сути, вы создаете файл с такими строками:
joe@example.com joe@somewhere
первый столбец - это локальный почтовый ящик, а второй - это электронное письмо, на которое вы пересылаете.
Если вам нужно доставлять письма в php-скрипт (или любую другую программу), есть аналогичный способ сделать это с помощью символа |
(но через псевдонимы, а не виртуальную карту - спасибо за комментарий) - загляните в раздел «список рассылки» того же документа.
listname: "|/some/where/majordomo/wrapper ..."
Вместо файлов вы также можете использовать MySQL - см. http://www.postfix.org/MYSQL_README.html