2009-02-27 3 views
1

1) Как настроить сервер linux таким образом, чтобы он мог получать любые сообщения, отправленные на адрес [email protected].Как создать скрипт электронной почты PHP?

2) Как эти электронные письма могут быть доступны и отображаться с помощью PHP-скрипта?

Я строю простой сценарий электронной почты, поэтому я хочу получать электронные письма только для зарегистрированных учетных записей электронной почты и классифицировать их электронные письма и показывать их.

Нужно также иметь возможность показывать вложения.

ответ

1

Сам почтовый сервер может быть настроен для приема электронной почты с любым количеством MTA (sendmail, postfix, exim и т. Д.). Вам также понадобятся защита от спама и сканирование вирусов (для этого также есть бесплатные пакеты в любом дистрибутиве). Будьте осторожны, запуск собственного почтового сервера НЕ является работой для слабонервных в наши дни.

Как только это на месте, я бы, вероятно, установил IMAP и использовал PHP's IMAP functions для извлечения и анализа сообщений. Просмотр вложений будет намного сложнее, если вы хотите, чтобы их читали в браузере, но легко заметить, что они есть и сделать их загружаемыми.

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

Обновление: На самом деле есть old article at evolt, который, как представляется, охватывает это.

0

У вас много работы перед вами - не ожидайте, что кто-то просто разместит здесь код.

Начните читать POP3, SMTP и IMAP RFC. Затем найдите торговое решение с открытым исходным кодом.

+0

Lol, что общего, что мне нужно делать? –

+0

Существуют ли какие-либо библиотеки, которые упрощают работу или все это работает на сервере? –

+0

Request Tracker (RT: http://bestpractical.com/rt/) - это пакет PHP, который делает это. Проверьте это. –

2

Честно говоря, вам лучше взглянуть на одну из уже существующих систем электронной почты и изменить ее в соответствии с вашими потребностями, а не писать что-то с нуля.

Письмо RFC - это весело читать (нет, нет, их нет), и обработка вложений привела к тому, что многие разработчики занялись тяжелым пьянством. Не поймите меня неправильно, это можно сделать. Его просто много работы, а не то, что вы хотите принять, если у вас нет кучи времени, чтобы выкопать его.

Однако, если вы хотите написать что-то быстрое и простое, я предлагаю установить Linux-модуль с Imap или pop-сервером, а затем получить доступ к этому почтовому ящику с соответствующими библиотеками PHP/Pear. Это будет самый быстрый способ добиться успеха.

Но я бы порекомендовал использовать один из решений для полки, которые там есть, и взломать его в соответствии с вашими потребностями.

+0

А что это за библиотеки php/pear? –

+0

Библиотека Pear находится здесь: http://pear.php.net/package/Mail_IMAP/ PHP также имеет встроенные функции, если у вас есть нужная поддержка, и эти функции находятся здесь: http: // us3. php.net/imap – usrlocal

Смежные вопросы