Intereting Posts
Почему мы всегда должны возвращать значения из функции? Как XML для Php PHP if ($ some_var == 1) всегда возвращает true, даже если это не так? Неустранимая ошибка: исключить исключение SoapFault: Ошибка аутентификации Отправка электронной почты с помощью PHP с SMTP-сервера Ответ отправителю – PHP-адрес электронной почты Необходимо удалить лишнее пространство между часто задаваемыми вопросами. Использование CSS и Bootstrap Обновление нескольких строк базы данных в Laravel Обмен переменными / памятью между всеми процессами PHP PHP: как использовать сеанс на одной странице, пока загружается другая страница с sesson Преобразование docx в pdf с помощью PHP Удаление видео из списка воспроизведения с API данных YouTube v3 Magento – получить ценовые правила от заказа Не удалось найти контроллер для пути "/ login_check" Лучший способ проверить переменную для пустой или пустой строки?

Перенести все новые электронные письма в базу данных

Я использую postfix для моего почтового сервера linux. Цель состоит в том, чтобы любая входящая почта была сброшена в базу данных с заголовками и информацией о сообщении, а затем удалялось электронное письмо с почтового сервера. Есть ли способ сделать postfix сообщение сообщение в php-файл каждый раз, когда приходит новое электронное письмо, а затем удаляет сообщение электронной почты? Единственный другой способ, с помощью которого можно сделать сценарий опроса сервера электронной почты, прочитать каждую почту и передать содержимое в базу данных, а затем удалить сообщения с почтового сервера. Возможность иметь постфикс автоматически выполнить скрипт php для всех новых входящих сообщений будет лучшим выбором. Если это имеет значение, почтовый сервер и сервер с php-файлом совпадают. Любое направление в этом вопросе было бы высоко оценено.

использовать .forward, / etc / aliases, hashtable и т. д. для пересылки почты в скрипт.

В / etc / aliases у меня есть

mysite-confirm: |/home/mysite/confirm.sh 

В confirm.sh, у меня есть

 #!/bin/sh basedir=/home/mysite/www php -d include_path=$basedir/includes -f $basedir/cli/confirm.php 

В confirm.php происходит волшебство:

 $contents = file_get_contents("php://stdin"); do_magic_with_mail($contents); 

Все довольно просто и жестко. Единственным недостатком является то, что вы можете отправить mysite-confirm@any_domain_I_host.com, но вы можете исправить это с помощью правильных псевдонимов / виртуальных карт и т. Д.