Пересылка почты в PHP - PullRequest
       10

Пересылка почты в PHP

4 голосов
/ 04 февраля 2012

Я разрабатываю компонент динамической пересылки почты для веб-сайта.

Концепция заключается в том, что - пользователь отправит электронное письмо с произвольным содержимым на специальный адрес электронной почты на сервере - на основе "to"и «сюжетное» содержимое строки, система перенаправит письмо на группу (внешних) адресов электронной почты, которые извлекаются из базы данных mysql

Я работаю на общем веб-хосте (Bluehost), поэтому я нене думаю, что у меня есть какой-либо расширенный доступ к почтовой инфраструктуре, чтобы сделать это для меня (например, нет файлов .forward).Список адресов электронной почты является динамическим, поэтому я не могу использовать cPanel для настройки статической пересылки.

У меня есть входящая почта, поступающая в сценарий PHP, но обработка выглядит сложной, особенно для частей MIME - multipart, вложения и т. д. Я посмотрел материал PEAR Mail / MIME, но, кажется, излишне полностью декодировать и перекодировать MSG ...

Любые советы?

1 Ответ

0 голосов
/ 04 февраля 2012

Я использую phpMailer для отправки электронной почты из PHP.

Я реализовал ту же концепцию в mod_perl несколько лет назад.Имейте в виду, что большая часть вашей исходящей электронной почты, вероятно, будет заблокирована, если вы отправите значительный объем.И если ваша система может быть взломана (и это звучит как минимум правдоподобно), спаммеры могут найти ее и использовать вашу систему, что приведет к блокировке всей вашей исходящей электронной почты.

Отправка электронной почты более сложна, чем должна быть (если рассматривать только технологию), благодаря спаму и спам-фильтрам.В наши дни мне часто легче писать код, который использует стороннюю службу для фактической отправки электронных писем, передавая адреса через API.Недавно мне повезло с API-интерфейсами MailChimp и Contactology.

РЕДАКТИРОВАТЬ: что касается входящей электронной почты: если бы вы не находились в ситуации с общим хостингом, это не было бы так сложно - просто перехватите его, уберите заголовки и перенаправьте обратно на новый адрес,Я должен был бы согласиться с Конрадом, я думаю на этот счет - PHP-скрипт с общим хостом кажется довольно неоптимальной средой для решения этой проблемы.Если вы не можете использовать system () для прямой передачи его обратно в почтовую инфраструктуру, я думаю, вам нужно полностью проанализировать входящую электронную почту и собрать ее.

...