構建反病毒反垃圾郵件系統(八)_Mail服務器教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!
        把用戶添加到郵件列表里測試一些,建一個文本文件,比如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',

      來源:網絡搜集//所屬分類:Mail服務器教程/更新時間:2013-04-15
      相關Mail服務器教程