Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

S=inet:порт@хост

S=inet6:порт@хост

Здесь путь – путь к UNIX-сокету в локальной файловой системе, остальные – IP-сокеты на некотором хосте.

Опции Т задают таймауты. C – таймаут соединения с фильтром; S – таймаут при передаче информации от Sendmail фильтру; R – таймаут при ожидании ответа фильтра; E – таймаут ожидания окончательного подтверждения от момента передачи конца сообщения фильтру.

В случае использования двух фильтров фрагмент исходного файла конфигурации Sendmail будет выглядеть так:

MAIL_FILTER(`mainfilter', `S=inet:2525@milter.host.ru, T=C:10m;S:30s;R:30s;E:10m')

MAIL_FILTER(`filter2', `S=inet:2626@milter.host.ru, T=C:10m;S:30s;R:30s;E:10m')

define(`confINPUT_MAIL_FILTERS', `mainfilter,filter2')

Информация на фильтры посылается в порядке их описания. Следующий алгоритм взаимодействия Sendmail и Milter приведен в документации к Sendmail:

Для каждого соединения:

  Для каждого фильтра:

    Вызвать connect()

    Вызвать hello()

  Для каждого сообщения (последовательно):

    Для каждого фильтра:

      Вызвать envfrom()

    Для каждого получателя:

      Для каждого фильтра:

        Вызвать envrcpt()

    Для каждого фильтра:

      Для каждого поля заголовка:

        Вызвать header()

      Вызвать eoh()

      Для каждого фрагмента тела:

        Вызвать body()

      Вызвать eom()

  Для каждого фильтра:

    Вызвать close()

Примечание: при обрыве соединения на любой стадии и по инициативе любого агента вызывается abort() и close().

В листинге 2 приведен вариант метода eom(), с помощью которого можно вызывать из Milter произвольные программы для проверки сообщения (например, на спам и вирусы).

Листинг 2

  def eom(self):

    """Обработка сообщения: проверка на вирусы с помощью антивируса ClamAV"""

    # Закрываем временный файл (если он есть)


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [100]
[101] [102] [103] [104] [105] [106] [107] [108] [109] [110] [111] [112] [113] [114] [115] [116] [117] [118] [119] [120]
[121] [122] [123] [124] [125] [126] [127] [128] [129] [130] [131] [132] [133] [134] [135] [136] [137] [138] [139] [140]
[141] [142] [143] [144] [145] [146] [147] [148] [149] [150] [151] [152] [153] [154] [155] [156]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100