新客网WWW.XKER.COM:致力做中国最专业的网络学院!
学院: 操作系统 - 网络应用 - 服务器 - 网络安全 - 工具软件 - 办公软件 - Web开发 - 数据库 - 网页设计 - 图形图像 - 媒体动画 - 硬件学堂 - 存储频道 - QQ专区
您的位置:首页 > 网络学院 > 服务器 > Mail服务器 > 正文:构建反病毒反垃圾邮件系统(八)

构建反病毒反垃圾邮件系统(八)

新客网 XKER.COM 2007-01-09 来源: 收藏本文
  把用户添加到邮件列表里测试一些,建一个文本文件,比如members.txt,一行一个邮件地址,然后执行如下命令就可以了:

  # /usr/local/mailman/bin/add_members -n members.txt mailman

  3、postfix相关配置

  还需要修改postfix的配置文件才能使mailman工作正常,修改main.cf,加上:

  owner_request_special = no
  recipient_delimiter = +
  unknown_local_recipient_reject_code = 550

  修改alias_maps和virtual_maps为:

  alias_maps = hash:/usr/local/mailman/data/aliases,
  mysql:/etc/postfix/mysql-aliases.cf
  virtual_maps = hash:/usr/local/mailman/data/virtual-mailman,
  mysql:/etc/postfix/mysql-virtual.cf

  单单这样还是不行的,我测试还需要把main.cf里myorigin改为:

  myorigin = lists.test.org

  然后在transport表里添加一个记录:

  insert into transport set domain='lists.test.org',destination='local:';

  重启postfix和mailman,现在可以试试给mailman这个邮件列表发邮件是否都正常了?

  4、python处理中文的问题

  如果邮件都是中文gb2312编码的就有问题,查看/usr/local/mailman/logs/error会发现如下的错误:

  Jul 16 17:40:09 2003 (392) Uncaught runner exception: unknown encoding
  Jul 16 17:40:10 2003 (392) Traceback (most recent call last):
  File "/usr/local/mailman/Mailman/Queue/Runner.py", line 105, in _oneloop
  self._onefile(msg, msgdata)
  File "/usr/local/mailman/Mailman/Queue/Runner.py", line 155, in _onefile
  keepqueued = self._dispose(mlist, msg, msgdata)
  File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 130, in _dispose
  more = self._dopipeline(mlist, msg, msgdata, pipeline)
  File "/usr/local/mailman/Mailman/Queue/IncomingRunner.py", line 153, in _dopipeline
  sys.modules[modname].process(mlist, msg, msgdata)
  File "/usr/local/mailman/Mailman/Handlers/CookHeaders.py", line 75, in process
  prefix_subject(mlist, msg, msgdata)
  File "/usr/local/mailman/Mailman/Handlers/CookHeaders.py", line 262, in prefix_subject
  h.append(s, c)
  File "/usr/local/mailman/pythonlib/email/Header.py", line 285, in append
  s = s.encode(outcodec, errors)
  LookupError: unknown encoding

  Jul 16 17:40:10 2003 (392) SHUNTING: 1058348408.892736+4539457d44c4477c6393b0b8b9916993b6084898

  这是由于python不支持gb2312的缘故!在linuxforum找到一篇关于如何使python支持gb2312的文章:

http://www.XXXX..net/forum/showflat.php?Cat=&Board=python&Number=
427317&page=0&view=collapsed&sb=5&o=&fpart=

  我就用了作者提供的http://bbs1.nju.edu.cn/file/gb2312.rar,其实它也是从http://sourceforge.net/projects/python-codecs/来的。把gb2312目录的gb2312.py文件拷贝到/usr/lib/python2.1/encodings/目录下,chinesecn目录也拷贝到该目录下,然后修改/usr/lib/python2.1/encodings/aliases.py文件,在最后的}前加上:

  # gb2321_cn codec
  'gb2312': 'gb2312',

收藏】 【评论】 【推荐】 【投稿】 【打印】 【关闭
发表评论
要记得去论坛讨论,点击注册新会员匿名评论
评论内容:不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规。
阅读排行
随机推荐
实用信息推荐