Re: postfixadmin 2.2
Добавлено: 2008-11-09 10:14:52
а кто как удаляет каталоги? он удаляет из базы но каталоги не удаляет...
Если не знаешь что делать – делай шаг вперёд
https://forum.lissyara.su/
Я такое с самого начала предложения тут такой связки ( exim dovecot postfixadmin ) замечал и спрашивал. Тогда мне ответили в стиле "ручками ручками" ...ProFTP писал(а):а кто как удаляет каталоги? он удаляет из базы но каталоги не удаляет...
Код: Выделить всё
my $sth = $dbh->prepare('SELECT t1.domain,
t2.mailbox,
t3.alias
FROM domain AS t1,
mailbox AS t2,
alias AS t3
WHERE (t1.domain = ?) AND (t2.domain = t1.domain) AND (t3.domain = t1.domain) limit 1
');
$sth->execute($domain);
my $dd = $sth->fetchrow_hashref();
$sth->finish();
if ($dd{'domain'} eq $domain) {
eval {
$dbh->do("INSERT INTO delete_domain
(domain,created)
VALUES ($dd{'domain'},NOW())");
$dbh->do("DELETE FROM domain
WHERE domain = $dd{'domain'}");
$dbh->commit();
};
if ($@) {
warn "Transaction aborted $@";
eval {$dbh->rollback()};
$sth->finish();
$dbh->disconnect();
exit;
}
if ($dd{'mailbox'} $dd{'mailbox'} > 0) {
my $sth = $dbh->prepare('SELECT mailbox
FROM mailbox
WHERE domain = ?
');
$sth->execute($domain);
$sth->finish();
my $n=0; my @mailboxs=();
while ($mailbox_del = $sth->fetchrow_array() ) {
$mailboxs[$n++]=$mailbox_del;
}
my $sth = $dbh->prepare('INSERT INTO delete_mailbox
(domain,mailbox,created)
VALUES (?,NOW())
');
eval {
for ($i=0;$i<@mailboxs;$i++)
{
$id=$i+1;
$sth->bind_param($id, $mailboxs[0]);
$sth->execute();
}
$dbh->do("DELETE FROM mailbox
WHERE domain = $domain");
$dbh->commit();
');
if ($@) {
warn "Transaction aborted $@";
eval {$dbh->rollback()};
$sth->finish();
$dbh->disconnect();
exit;
}
}
if ($dd{'alias'} && $dd{'alias'} > 0) {
my $sth = $dbh->prepare('DELETE FROM alias
WHERE domain = ?
');
$sth->execute($domain);
$sth->finish();
}
} $dbh->disconnect();
postfixadmin делает тоже самоену почему же не фиг ? , скрипт то реально работает , регинит юзеров и домены , что ещё нужно ? всё работает ...
делать нечего или любишь изобретать велосипеды?postfixadmin фтопку, надо свой писать
Не ищу лёгких путей , ну а что ProFTP прав , с постфиксомадмином , уже многие намучилисьAlex_hha писал(а):postfixadmin делает тоже самоену почему же не фиг ? , скрипт то реально работает , регинит юзеров и домены , что ещё нужно ? всё работает ...
делать нечего или любишь изобретать велосипеды?postfixadmin фтопку, надо свой писать
что не удаляет?почему он тогда не удаляет?
ню-ню, у меня чо то никаких проблем никогда не возникалоНе ищу лёгких путей , ну а что ProFTP прав , с постфиксомадмином , уже многие намучились
каталогиAlex_hha писал(а): что не удаляет?
Код: Выделить всё
system("sudo rm -rf /var/spool/mail/$domain");
в 2.2.1 все он удаляет, читать документацию не пробовал?каталоги
Также можно глянуть в сторону скрипта - mailbox_remover.pl прежде чем изобретать велосипед// Optional:
// Script to run after deletion of mailboxes.
// Note that this may fail if PHP is run in "safe mode", or if
// operating system features (such as SELinux) or limitations
// prevent the web-server from executing external scripts.
// $CONF['mailbox_postdeletion_script']='sudo -u courier /usr/local/bin/postfixadmin-mailbox-postdeletion.sh';
а при чем тут MUA к postfixadmin?!с новыми юзерами Outlook и Mozilla Thunderbird рычали , что таких юзеров не существует
Alex_hha писал(а):а при чем тут MUA к postfixadmin?!с новыми юзерами Outlook и Mozilla Thunderbird рычали , что таких юзеров не существует
Код: Выделить всё
/usr/local/www/postfixadmin/edit-mailbox.php
Код: Выделить всё
ЗАкоментить вот это
//if (isset ($_POST['fPassword'])) $fPassword = escape_string ($_POST['fPassword']);
//if (isset ($_POST['fPassword2'])) $fPassword2 = escape_string ($_POST['fPassword2']);
Написать вот это
if (isset ($_POST['fPassword'])) $fPassword = $_POST['fPassword'];
if (isset ($_POST['fPassword2'])) $fPassword2 = $_POST['fPassword2'];
Код: Выделить всё
// When creating mailboxes or aliases, check that the domain-part of the
// address is legal by performing a name server look-up.
$CONF['emailcheck_resolve_domain']='NO';
amalrik писал(а):Приветствую всех, в постфиксадмине никто не сталкивался с проблемой: При отправке письма приветственного он секунд 30 думает только тогда отправляет. К слову сказать такая же ситуация наблюдалась и на squirrelmail, в то время как roundcube работает только в путь. Связка exim+dovecot. Я подозреваю что это acl какая-то долго отрабатывает. Может которая с чёрными листами работает?
Код: Выделить всё
warn
# ставим дефолтовую задержку в 30 секунд
set acl_m0 = 30s
warn
# ставим задержку в 0 секунд своим хостам и
# дружественным сетям (соседняя контора :))
hosts = +relay_from_hosts : 127.0.0.1/8 : 192.168.1.0/24 : 83.222.25.0/24
set acl_m0 = 0s
Код: Выделить всё
deny message = "host in blacklist - $dnslist_domain \n $dnslist_text"
dnslists = opm.blitzed.org : \
proxies.blackholes.easynet.nl : \
cbl.abuseat.org : \
bl.spamcop.net : \
bl.csma.biz : \
dynablock.njabl.org : \
Код: Выделить всё
cancer#mydomain.ru@autoreply.mydomain.ru
Код: Выделить всё
postfixadmin-2.2.1.1
Cancer писал(а):У кого vacation нормально работает в postfixadmin?????
я включил автоответ он естесно мой ящик добавил в БД далее отправляю письмо а он автответ пинает на мой ящик локальныйИ я конечно получаю Unrouteable addressКод: Выделить всё
cancer#mydomain.ru@autoreply.mydomain.ru
и пробую отключить автответ, а он не отключается. Приходится руками из БД его убирать.
Код: Выделить всё
postfixadmin-2.2.1.1
Код: Выделить всё
//$vacation_goto = preg_replace('/@/', '#', $fUsername);
//$vacation_goto = $vacation_goto . '@' . $vacation_domain;
Код: Выделить всё
$vacation_goto = $fUsername;
Код: Выделить всё
//$goto= preg_replace ( "/$vacation_goto,/", '', $goto);
//$goto= preg_replace ( "/,$vacation_goto/", '', $goto);
//$goto= preg_replace ( "/$vacation_goto/", '', $goto);
Спасибо. Всё отлично заработало как требуется.На сколько я помню правил так.
В файле edit-vacation.php