Копировать данные с почтового сервера в базу данных
Можно ли сделать резервную копию электронной почты в базе данных MySQL? Скажем, у меня есть учетная запись me@domain.com, и я хочу вести учет всех писем внутри mail.domain.com локально, на моем компьютере.
Из того, что я искал в Интернете, говорится, что почтовый сервер хранит электронную почту в виде текстового файла. Итак, если я смогу достать этот файл, перенести его на свой локальный компьютер, тогда я смогу обработать его и сохранить в базе данных, верно?
Итак, мой вопрос: как перенести файл с почтового сервера на мой локальный компьютер? как даже определить файл?
Любой пример будет высоко ценится.
Заранее спасибо.
1 ответ
Большинство почтовых серверов хранят электронную почту либо в "Папках почты", либо в "Папках почты". "Почтовые папки" означают, что в каждой папке / категории хранятся все электронные письма, одна за другой. "Mail Dir" означает, что каждая папка на самом деле является каталогом, в котором каждое почтовое сообщение представлено в виде одного файла в этом каталоге.
Вы правы, говоря, что если вы получите этот почтовый файл (который на самом деле означает "Почтовые папки" или "Почтовые папки"), вы можете написать скрипт для его импорта в вашу базу данных.
Что касается определения почтовых каталогов / папок, это не то, что вам нужно делать, это что-то, что "почтмейстер" в вашем домене может посоветовать вам, поскольку они могут быть где угодно. Общие места (в системах Unix) включают /var/spool/mail и ~mail - но это произвольно.
Альтернативой получению почтовой папки /dir будет указание серверу предоставить ее вам. В зависимости от вашего сценария, если у вас есть все электронные письма, которые находятся в папке "Входящие", и ваш провайдер использует протокол "POP3", вы сможете написать сценарий механизма, который будет обрабатывать каждое письмо и обрабатывать его. POP3 - довольно простой протокол. Вы можете сделать что-то похожее с IMAP - что даст вам доступ ко всем файлам - но которое гораздо сложнее в использовании и, вероятно, потребует фреймворка / библиотеки, чтобы помочь.
Почтовые сообщения сами по себе довольно просты -
Они состоят из заголовка, разделенного 2 строками и тела. Вы можете проанализировать заголовок, чтобы получить от, до, тему, дату сообщения и т. Д. Тело может быть текстовым или может быть разбито на несколько разделов, каждый из которых обычно закодирован в Base64 (но есть альтернативы этому) - например, если Вы получаете электронное письмо с HTML и текстом, а также электронные письма или вложения в электронном письме.