Return CGI Library
procmail is the program we use for delivering mail to 'local' accounts on our webservers. It uses a special config file
.procmailrc in your home directory to control what happens to your incoming mail.
It can be used to build simple autoresponders, context-sensitive autoresponders, forward to various people depending on content. You
can use it to handle your own 'overlapping' e-mail addresses (e.g. sales@DOMAIN.com)
The best resource is the man pages that come with procmail...
Procmail and VMail:
To use procmail with VMail you have to call procmail "by hand" via a forward. Procmail delivers mail to a spool file, and thus you will
have to setup a POP account to reach that spool file. This is unfortunate since any POP account you setup can be delivered to directly
:-(
Example: You might have an alias called "sales" which forwards to procmail via the following alias "|/usr/bin/procmail
/home/yourftpid/sales.proc", where sales.proc is the procmail recipe (see http://procmail.org/). Your procmail recipe would probably
deliver to a spool file in the /home/yourftpid/yourdomain.vmail/spool/ directory, perhaps called sales.pop
[You can use the /sec-bin/status page to determine where your document root directory is. The Vmail directory will be right beside it
(same name with ".vmail" added to the end), and the POP spool files are in the "spool" subdirectory of that.]
Procmail and the (old) Admin Interface:
E-mail forwarding via the Admin interface over-rides a .procmailrc file, so you'll have to turn that off for the account which is going
to have a .procmailrc file :-)
The .procmailrc file is checked for in the home directory of an account receiving mail. This means that you have two options:
- create an ftp account so that you can have a home directory, AND upload a .procmailrc file there. If you want to filter messages
coming to more than one address, you can forward the other addresses to this account.
- OR you can store the .procmailrc file in the home directory for your account. You can then forward (or have us forward), any other
addresses to your main account. That's what we did in the example below, which is why we filtered on the To: header .
Example:
What follows is a example .procmailrc file that I put in for a client [after they patiently waited for weeks :-( ].
Following the example is a collection of procmail links.
Please note that you must upload your .procmailrc file in TEXT MODE.
SHELL=/bin/sh
LOGFILE=procmail.log
:0 c
* ^To:.*info@DOMAIN.com.*
* !^X-Loop:.*DOMAIN.com.*
{
:0
* ^Subject: *free *page
| (formail -r -A "X-Loop: DOMAIN.com" \
-i "From: USERID@DOMAIN.com" \
-i "Subject: Free Page Autoresponse"; \
cat /home/USERID/helpdesk/info/OnlnFrePgFolo.txt) \
| /usr/sbin/sendmail -t
:0
| (formail -r -A "X-Loop: DOMAIN.com" \
-i "From: USERID@DOMAIN.com" \
-i "Subject: Unrecognized Autoresponse"; \
echo "What was that you wanted?" ) | /usr/sbin/sendmail -t
}
:0
! mailbox@some.host.com
:0
/var/spool/mail/USERID
Here are the man pages
and the Doc files that come with procmail.
The
Filtering Mail FAQ which is on my "to read" list ... :-) :-(
|