Chinaunix
标题:
紧急求助:mailfilter文件错,请帮帮我!
[打印本页]
作者:
scpe
时间:
2006-02-25 15:53
标题:
紧急求助:mailfilter文件错,请帮帮我!
大家好,我装邮件服务器(按xuke的Linux qmail安装指南2.9)后,配置mailfilter文件后发现语法错,我检查了,手工输入了文件内容,还是在else处出错,于是测试下面内容,发现也要在else处报错。
f ( $SIZE < 262144 )
{
echo "test error!"
}
else
{
}
还有就是定义的变量VHOME和VSPAM好象就没生效(我去掉所有内容,只要VHOME=`/home/vpopmail/bin/vuserinfo -d $EXT@$HOST` 和 to "$VHOME/Maildir/." ,发现找不到邮件目录,echo $VHOME内容为空,而将该变量改为实际用户的该目录,就可以收到邮件了),请大家帮我看一下,搞了几天了,就是查不出错来。
下面为错误内容:
@40000000440008f11f91ac34 new msg 1482712
@40000000440008f11f91c3a4 info msg 1482712: bytes 3077 from <
ldl@test.net
> qp 4504 uid 503
@40000000440008f11fcb5dbc starting delivery 137: msg 1482712 to local
test.net-ldl@test.net
@40000000440008f11fcb7144 status: local 1/10 remote 1/20
@40000000440008f1206841cc delivery 137: deferral: mailfilter(21):_Syntax_error./
@40000000440008f12068593c status: local 0/10 remote 1/20
@40000000440008f5203260d4 starting delivery 138: msg 1482782 to remote
gsgsgsg@ss.com
@40000000440008f52032745c status: local 0/10 remote 2/20
@40000000440008f9203260d4 starting delivery 139: msg 1482666 to remote
bifcisabc9@bttyy.eicp.net
@40000000440008f92032745c status: local 0/10 remote 3/20
@40000000440008f934ab064c delivery 139: deferral: Sorry,_I_wasn't_able_to_establish_an_SMTP_connection._(#4.4.1)/
@40000000440008f934ab1dbc status: local 0/10 remote 2/20
@40000000440008fc3476427c starting delivery 140: msg 1483123 to local
test.net-webmaster@test.net
@40000000440008fc347659ec status: local 1/10 remote 2/20
@40000000440008fc351a17e4 delivery 140: deferral: mailfilter(21):_Syntax_error./
@40000000440008fc351a333c status: local 0/10 remote 2/20
@40000000440008fe350fb7a4 starting delivery 141: msg 1482707 to local
test.net-lgx@test.net
@40000000440008fe350fcf14 status: local 1/10 remote 2/20
@40000000440008fe35ad14cc delivery 141: deferral: mailfilter(21):_Syntax_error./
@40000000440008fe35ad2c3c status: local 0/10 remote 2/20
下面为我的mailfilter文件内容:
VHOME=`/home/vpopmail/bin/vuserinfo -d $EXT@$HOST`
VSPAM=`/home/vpopmail/bin/vuserinfo -d $EXT@$HOST`
`test -d $VHOME/Maildir/`
if( $RETURNCODE != 0 )
{
echo "Sorry , but the user $EXT@$HOST dos not exist"
EXITCODE=77
exit
}
if ( $SIZE < 262144 )
{
exception {
xfilter "/usr/bin/spamc -f -u $EXT@$HOST"
}
}
if (/^X-Spam-Flag: YES/)
{
to "$VSPAM/Maildir/.Trash/."
EXITCODE=0
}
else
{
exception {
include $VHOME/.mailfilter
}
to "$VHOME/Maildir/."
}
[
本帖最后由 scpe 于 2006-2-25 15:58 编辑
]
作者:
lnux
时间:
2006-02-25 20:16
试试
if ( $SIZE < 262144 )
{
echo "test error!"
exit
}
else
{
exit
}
复制代码
作者:
scpe
时间:
2006-02-25 21:16
难到要在EXITCODE=0 后加exit?我明天试试。
作者:
scpe
时间:
2006-02-26 18:07
找到变量VHOME和VSPAM好象就没生效的原因了,是因为我没有给vpopmail执行shell的权限。
改了后就可以了。
但现在还有问题,就是if语句好象不识别,这就不知道还要改哪个地方了。请大家指教。急死了。
[
本帖最后由 scpe 于 2006-2-26 18:15 编辑
]
作者:
scpe
时间:
2006-02-27 18:02
up
作者:
scpe
时间:
2006-02-27 19:04
有没有人知道原因啊?
作者:
scpe
时间:
2006-03-02 14:17
现在问题还没有得到解决。进入死胡同了。
作者:
scpe
时间:
2006-03-04 15:49
标题:
哎,还是我自己解决了问题
我在Redhat linux AS 4下重新编译安装maildrop,然后将/usr/local/bin目录下的maildrop相关的文件(除maildrop)拷贝到Redhat linux 9下,这时要注意要备份原来的/usr/local/bin/maildrop文件,因为平台不同的原因吧,AS 4下的maildrop文件在9上不能用。这样就可以用了。真郁闷!
至今找不到原因,因为在9下安装没有报错,估计是9下的Perl包没有安装完的原因。
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2