а как это сделать в exim? Или есть другой способ?4. Setup the transport type
--------------------
Define the transport type in the Postfix master file:
#/etc/postfix/master.cf:
filter unix - n n - - pipe
flags=DRhu user=vacation argv=/var/spool/vacation/vacation.pl
Tell Postfix to use a transport maps file, so add the following to your
Postfix main.cf:
#/etc/postfix/main.cf:
transport_maps = hash:/etc/postfix/transport
Then add the transport definition to the newly created transport file.
Obviously, change yourdomain.com to your own domain. This can be any
arbitrary domain, and it is easiest if you just choose one that will be used
for all your domains.
#/etc/postfix/transport
autoreply.yourdomain.com vacation
Execute "postmap /etc/postfix/transport" to build the hashed database.
Execute "postfix reload" to complete the change.
Exim, postfixadmin + vacation
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
Exim, postfixadmin + vacation
Кто-нибудь прикручивал модуль vacation к связке Exim + postfixadmin? В доке написано:
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
Интересная дока, но как это описать в конфиге используя таблицу модуля vocation:lissyara писал(а):http://www.lissyara.su/?id=1227
чем неустраивает?
Код: Выделить всё
CREATE TABLE vacation (
email varchar(255) NOT NULL default '',
subject varchar(255) NOT NULL default '',
body text NOT NULL,
cache text NOT NULL,
domain varchar(255) NOT NULL default '',
created datetime NOT NULL default '0000-00-00 00:00:00',
active tinyint(4) NOT NULL default '1',
PRIMARY KEY (email),
KEY email (email)
) TYPE=MyISAM COMMENT='Postfix Admin - Virtual Vacation';
Код: Выделить всё
address_reply:
driver = autoreply
...
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
Код: Выделить всё
address_reply:
driver = autoreply
from = $original_local_part@$domain
subject = ${lookup mysql{SELECT subject FROM vacation WHERE ... }}
text = ${lookup mysql{SELECT body FROM vacation WHERE ... }}
to = ${lookup mysql{SELECT email FROM vacation WHERE ... }}
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
Вроде сделал, кому интересно смотрите:
в роутенге после всех проверок на спам (хотя наверно надо до чтом не дёргать dspam+mysql) пишем:
в транспорте в любом месте описываем:
в роутенге после всех проверок на спам (хотя наверно надо до чтом не дёргать dspam+mysql) пишем:
Код: Выделить всё
vacation_director:
driver = accept
domains = ${lookup mysql{SELECT domain FROM vacation WHERE \
domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}' AND \
active='1'}{$value}}
transport = vacation_autoreply
unseen
Код: Выделить всё
vacation_autoreply:
driver = autoreply
user = mail
group = mail
to = ${sender_address}
from = "${local_part}@${domain}"
log = /var/log/exim/vacation.log
subject = "Auto Reply from ${local_part}@${domain}"
text = ${lookup mysql {SELECT body FROM vacation \
WHERE domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}'}{$value}}
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
В postfixadmin включаешь модуль vacation и по ссылке http://where-postfixadmin-location/users каждый юзер почтового сервера может включить или выключить автоответчик (там ещё можно пароль менять), правда "Subject" поле не участвует в формировании autoreply письма так как кириллица не допустима в сабжекте письма.lissyara писал(а):я о том, как этим управлять...
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
- Zedik
- сержант
- Сообщения: 283
- Зарегистрирован: 2007-01-20 22:30:57
- Откуда: 127.0.0.1
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
А что это даёт? У меня вроде и так работает.Zedik писал(а):для тех у кого авторизация проходит по name@domen нужно править в vacation.php
строку $goto = $tGoto . "," . "$USERID_USERNAME@$vacation_domain";
до такой: $goto = $tGoto . "," . "$USERID_USERNAME";
P.S. Для SM поставил postfixadmin plugin, вполне доволен. Единственное alias не разрешает завести.
- Вложения
-
postfixadmin-0.3-1.4.tar.gz
- (10.77 КБ) 140 скачиваний
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- Zedik
- сержант
- Сообщения: 283
- Зарегистрирован: 2007-01-20 22:30:57
- Откуда: 127.0.0.1
у меня он к доставке адрес назначения выставлял name@domen@domengregor писал(а):А что это даёт? У меня вроде и так работает.Zedik писал(а):для тех у кого авторизация проходит по name@domen нужно править в vacation.php
строку $goto = $tGoto . "," . "$USERID_USERNAME@$vacation_domain";
до такой: $goto = $tGoto . "," . "$USERID_USERNAME";
P.S. Для SM поставил postfixadmin plugin, вполне доволен. Единственное alias не разрешает завести.
а что за плугин?
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- sergio
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2006-12-30 2:47:28
- Откуда: Русь Києвська
Заменил, однакоZedik писал(а):для тех у кого авторизация проходит по name@domen нужно править в vacation.php
строку $goto = $tGoto . "," . "$USERID_USERNAME@$vacation_domain";
до такой: $goto = $tGoto . "," . "$USERID_USERNAME";
Код: Выделить всё
temporarily rejected RCPT <sergio@ol.org.ua>: error in redirect data: malformed address: @ol.org.ua may not follow sergio@ol.org.ua in "sergio@ol.org.ua@ol.org.ua"
- sergio
- мл. сержант
- Сообщения: 79
- Зарегистрирован: 2006-12-30 2:47:28
- Откуда: Русь Києвська
Сори разобрался
Все пашет!
Только вот беда - пытаюсь тему получить из mysql:
при этом если в теме латинские символы- все ок, а вот если кирилица - ОШИБКА!
Все пашет!
Только вот беда - пытаюсь тему получить из mysql:
Код: Выделить всё
vacation_autoreply:
driver = autoreply
user = mailnull
group = mail
to = ${sender_address}
from = "${local_part}@${domain}"
log = /var/log/exim/vacation.log
#subject = Auto Reply from ${local_part}@${domain}
subject = ${lookup mysql {SELECT subject FROM vacation \
WHERE domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}'}{$value}}
text = ${lookup mysql {SELECT body FROM vacation \
WHERE domain='${quote_mysql:$domain}' AND \
email='${quote_mysql:$local_part@$domain}'}{$value}}
при этом если в теме латинские символы- все ок, а вот если кирилица - ОШИБКА!
Код: Выделить всё
Expansion of "${lookup mysql {SELECT subject FROM vacation WHERE domain='${quote_mysql:$domain}' AND email='${quote_mysql:$local_part@$domain}'}{$value}}" in vacation_autoreply transport contains non-printing character 216
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
а там нельзя кириллицу...
можно схитрить. заюзать это:
http://ru2.php.net/urlencode
т.е. письмо должно быть в html с символами русскими кодированными таким макаром.
браузеры нормално понимают русские символы кодированные таким макаром.
те почтовые клиенты(большинство) которые используют внешнюю смотрелку для писем в html - тоже поймут.
===========
причём мона ну совсем простой html - а текст внутри ограничиичть тегами < pre></pre >
можно схитрить. заюзать это:
http://ru2.php.net/urlencode
т.е. письмо должно быть в html с символами русскими кодированными таким макаром.
браузеры нормално понимают русские символы кодированные таким макаром.
те почтовые клиенты(большинство) которые используют внешнюю смотрелку для писем в html - тоже поймут.
===========
причём мона ну совсем простой html - а текст внутри ограничиичть тегами < pre></pre >
Убей их всех! Бог потом рассортирует...
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- рядовой
- Сообщения: 49
- Зарегистрирован: 2007-02-16 17:51:29
- Alex Keda
- стреляли...
- Сообщения: 35439
- Зарегистрирован: 2004-10-18 14:25:19
- Откуда: Made in USSR
- Контактная информация:
-
- проходил мимо
Re:
sergio писал(а):Заменил, однакоZedik писал(а):для тех у кого авторизация проходит по name@domen нужно править в vacation.php
строку $goto = $tGoto . "," . "$USERID_USERNAME@$vacation_domain";
до такой: $goto = $tGoto . "," . "$USERID_USERNAME";Код: Выделить всё
temporarily rejected RCPT <sergio@ol.org.ua>: error in redirect data: malformed address: @ol.org.ua may not follow sergio@ol.org.ua in "sergio@ol.org.ua@ol.org.ua"
Как ты с этим разобрался?