首 页 教育新闻课件中心论文中心教学教案试题中心语文专题综合下载技术教程公务员  
设为首页
加入收藏
联系我们
您当前的位置:中国教育资源网 -> 技术教程 -> 网络相关 -> 服务器 -> 邮件服务器 -> 技术内容 退出登录 用户管理

maildrop于subject使用base64编码的问题!急..邮件服务器教程

论文作者:佚名  论文来源:不详  论文发布时间:2006-6-18 23:55:47  论文发布人:chjchjchj

减小字体 增大字体

              摘要:maildrop于subject使用base64编码的问题!急..
我现在发现现在所有的信件的主题都使用base64编码.
我使用outlook发送了两封信,一个主题是纯英文(test),一个包含汉字(test一二).
在我的邮箱中察看邮件原文,发现包含中文的已经被编码了.
我想问如何使用maildrop过滤规则来过滤所有包含test的邮件呢?
或者说maildrop能否将编码的主题进行解码呢?

如何进行操作. 
各位人兄你们是如何解决的?

 gadfly 回复于:2003-05-07 20:41:32maildrop本身不能解码,需要利用外挂的工具来解码,然后再过滤。

 addy 回复于:2003-05-08 11:09:29能否提供一个.告诉我使用什么进行解码?
谢谢了!

 gadfly 回复于:2003-05-08 12:43:28好像确实没有专门对mail解码的工具

我介绍你几个工具,你自己研究看看:
mmencode工具,metamail软件包
mewencode, mew-common软件包

 addy 回复于:2003-05-08 23:39:09我有一个设想,就是我将编码的邮件主题分解出来,然后传给外部程序,程序进行解码然后再传入maildrop的变量中.我只要对已经解码的邮件主题进行过滤就可以了.
我写了一个解码程序maildecode
[code:1:0197fc4045]
#!/usr/bin/perl

# Convert Base64 Or Quoted-printable TO Text 

my $a = $ARGV[0] || '';

if ($a=~/^Subject/) {
        $a = $ARGV[1] || '';
 };


if ($a=~/^=\?[\w-]+\?B\?(.*)\?=$/) {
   use MIME::Base64;
   $a = decode_base64($1);
};
if ($a=~/^=\?[\w-]+\?Q\?(.*)\?=$/) {
   use MIME::QuotedPrint;
   $a = decode_qp($1);
};

# USE FOR Test
open(OUTFILE, ">/tmp/list.log");
print OUTFILE $a;
close(OUTFILE);

print $a;

exit(0);
[/code:1:0197fc4045]

然后更改.mailfilter 文件

[code:1:0197fc4045]
SHELL="/bin/sh"


if (/^Subject:.*/) 
 {
 SUBJECT=$MATCH 
 }



if ($SUBJECT ne "")
 {
  NSUB='/usr/local/bin/maildecode $SUBJECT '

  log "$NSUB"


  if ($NSUB=~/^Subject:.*[ ]test$/) 
     {
        to "/home/vpopmail/domains/domain_name/a1/Maildir/.1052105760/"
     }
 }

[/code:1:0197fc4045] 

但是我发现maildrop没有执行我这个外部程序,NSUB的内容就是
'/usr/local/bin/maildecode $SUBJECT '字符串, maildecode 没有执行.

我想问为什么,那里错了? 如何更改. 此方法是否可行?

 gadfly 回复于:2003-05-09 10:48:04有两个地方有问题:
首先perl脚本,subject的标题内容不是开始的
所以改成:
[code:1:fd9754dabc]
if ($a=~/=\?[\w-]+\?B\?(.*)\?=$/) { 
....
if ($a=~/=\?[\w-]+\?Q\?(.*)\?=$/) { 
....
[/code:1:fd9754dabc]

其次,maildrop filter中,外部文件的执行用反撇,所以,那句话改成
NSUB=`/usr/local/bin/maildecode $SUBJECT `

 addy 回复于:2003-05-09 11:08:01谢谢已经成功解决了
maildecode 程序
[code:1:f486c6bb70]
#!/usr/bin/perl

# Convert Base64 Or Quoted-printable TO Text

my $a = $ARGV[0] || '';

if ($a=~/^Subject/) {
        $a = $ARGV[1] || '';
 };


if ($a=~/=\?[\w-]+\?B\?(.*)\?=$/) {
   use MIME::Base64;
   $a = decode_base64($1);
};
if ($a=~/=\?[\w-]+\?Q\?(.*)\?=$/) {
   use MIME::QuotedPrint;
   $a = decode_qp($1);
};

#open(OUTFILE, ">/tmp/list.log");
#print OUTFILE $a;
#close(OUTFILE);

print $a;

exit(0);
[/code:1:f486c6bb70]

在.mailfilter中加入
[code:1:f486c6bb70]
if (/^Subject:.*/) 
 {
 SUBJECT=$MATCH 
 }

if ($SUBJECT ne "")
 {
   NSUB=`/usr/local/bin/maildecode $SUBJECT `
}

[/code:1:f486c6bb70]
以后所有的主题过滤只要对$NSUB进行过滤即可

在此感谢gadfly兄的帮助,非常感谢!!!

 HonestQiao 回复于:2004-01-31 00:02:51咱现在需要这个,在这方面真的经验太少,还希望多多指点一下子,该怎么应用$NSUB呢?

全英文标题邮件,过滤test,规则如下:
包含test标题的信件全部垃圾箱
[code:1:270f2bf4ac]if(/^Subject:.*test*/ || /^Subject:.*TEST*/)
{
to "/mail/sms.org/test/Maildir/.Trash/."
}
to "/mail/sms.org/test/Maildir/."[/code:1:270f2bf4ac]

如今中文的标题包含test
[code:1:270f2bf4ac]if (/^Subject:.*/) 

SUBJECT=$MATCH 


if ($SUBJECT ne "") 

   NSUB=`/usr/local/bin/maildecode $SUBJECT ` 


if($NSUB=~/^.*test*/ || $NSUB=~/^.*TEST*/)
{
to "/mail/sms.org/test/Maildir/.Trash/."
}
to "/mail/sms.org/test/Maildir/."[/code:1:270f2bf4ac]

可是没有任何效果哦.
我想可能是我这里:
[code:1:270f2bf4ac]if($NSUB=~/^.*test*/ || $NSUB=~/^.*TEST*/)[/code:1:270f2bf4ac]

错误了,我在这方面的经验少,希望大伙给个正确的写法

 myblessu 回复于:2004-12-13 09:39:42我正需要这知识,哪位兄弟在讲讲.

 abel 回复于:2004-12-13 19:35:03這個問題完全沒考慮  charset 問題,只考慮了 MIME 或 QP 還原可能稍
嫌不足 , 所謂若 local encoding 與你的 patten 相符固然沒問題,
若人家以 UTF8 傳來,還是檔不到 ,EX:
=?UTF-8?B?5q2j5Zyo5a+E6YC....

NSUB=`/usr/local/bin/maildecode $SUBJECT ` 
這個 SUBJECT 若有 ' " 等,有時也會有問題 
若不懂我的意思,再想想 `ls -la "a ` 可以跑嗎 ?

[] [返回上一页] [打 印] [收 藏]  
 ∷相关技术评论  (评论内容只代表网友观点,与本站立场无关!) [查看发表评论...]
 
 中国教育资源网免费技术教程下载中心-站内广告 站内广告 中国教育资源网免费技术教程下载中心-站内广告 
 中国教育资源网站内搜索 站内搜索 中国教育资源网站内搜索 
 

   
 中国教育资源网免费技术教程下载中心-栏目导航 栏目导航 中国教育资源网免费技术教程下载中心-栏目导航 
· Windows 9XMEXP · Windows NT20002003
· LinuxBSD · 系统综合
· IISApache · 硬件技术
· Web服务器 · FTP服务器
· 邮件服务器 · 域名服务器
· Windows服务器 · 代理服务器
· 服务器综合
 
中国教育资源网免费技术教程下载中心-相关教程  相关技术 中国教育资源网免费技术教程下载中心-相关教程
· [组图] QQMail3,让我悄悄爱
· [图文] 学网络:用DreamMai
· [图文] 教你使用IncrediMai
· [组图] 收发邮件更快捷 Fox
· [组图] 腾讯Foxmail V6.0 B
· [组图] 破译Foxmail密码天书
· [组图] 新鲜玩法 Becky! In
· [组图] 彻底让Foxmail安全到
· 打造Foxmail全能模板
· 让你畅游互联网的世
 中国教育资源网免费技术教程下载中心-本月热门教程 本月热门 中国教育资源网免费技术教程下载中心-本月热门教程 
 
 中国教育资源网免费技术教程下载中心-本日热门论文 本日热门 中国教育资源网免费技术教程下载中心-本日热门论文 
 
关于本站 - 网站帮助 - 免费课件 - 美容 - 绿色软件 - 软件下载 - 广告合作 - 下载声明 - 友情连接 - 网站地图 - 网站留言
浙ICP备06010405号 Email:cnkjz@163.com 技术支持:名流设计
版权所有 Copyright© 2002-2004 名流