Automatic removal of invalid e-mail addresses


After a long break, I’m back to phplist. Yesterday, the first mailing on a small number of recipients (1800 addresses, 900/hour, hosting limit is 1000) was quite successful. While sending, I got a lot of 136 return e-mails due to: “Failure notice - mail delivery error”.

The question is: How can I add these addresses to the blacklist so that in the future my e-mails do not go to non-existent addresses and do not make unnecessary traffic on the server? I know that I can search for each one and add it manually to the blacklist, but can I do it faster/automatically?

If there is such a topic and I couldn’t find it, please link it.

Thank you and best regards, Mariusz

I would suggest you set up a CRON job that runs once each day. I’m copying the one from my server and replacing with ALL CAPS the items you will need to adjust within your server.

/usr/bin/php /home/WEBUSER/www/phpList/admin/index.php -p processbounces -c/home/WEBUSER/www/phpList/config/config.php > /home/WEBUSER/ListLogs/Bounces.txt

Yes, I have a folder called ListLogs in the WEBUSER’s root area that I can review both the blacklist and the automatic sending of mail. The settings in regards to how many bounces to blacklist are in the config area. You can also have the system send an email to admins regarding the blacklist activity.

Hope you find this useful,

Thank you for your answer.

I did this by setting up a bounce section in the config file (mailbox settings, number of bounces, etc) so that the invalid addresses were fetched into phpList. Then, using the plugin “SubscribersPlugin”, I moved all 136 addresses to the blacklist.

I have 24k addresses in the e-shop, some of which no longer exist. I did the first phpList mailing on an example group of 1800 addresses (900/h). Anyway, I have to successively send mailings to all 22k recipients and add nonexistent e-mails to the blacklist to clean the database of addresses for subsequent mailings.

Your solution is certainly better than mine but I’m not that advanced to set it up as written. Out of curiosity, does your CRON command automatically create a Bounces.txt file in the declared directory with logs? If you already have a list of address bounces, do you also manually copy and delete them in the phpList admin?

The CRON command runs the blacklist cleanup based on the config file settings. You can create the Bounces.txt file anywhere you want or leave off the > /home/WEBUSER/ListLogs/Bounces.txt

I like seeing what all was done so I review that weekly. You can actually create that file anywhere you have permission to write based on the user running the CRON job. I actually have the ability (via cPanel) to manage the CRON jobs using a web form.

Hope that helps,