Important!
This documentation has been deprecated. We are migrating Oempro help articles to our new help portal. Take a look at more detailed help articles on our new help portal.
Sections:
Bounce handling is a must-have for anyone who is sending mass email to several email addresses. Keeping your subscriber lists away from bounced email addresses will increase your email reputation and decrease the chance of getting black listed.
Bounced email address means permanently or temporarily disabled/inactive email address. The reason can be exceeded size limit, temporary connection failures, invalid or incorrect email address, etc.
Oempro uses powerful VERP (Variable Envelope Return Path) bounce handling method. This method speeds up the detection performance of bounced email addresses as well as the accuracy.
In order to setup Oempro bounce handling on your server, you need to set up a catch-all email address on your server. Catch-all email address means, all incoming emails to non-existing email accounts on your server will be redirected to a specific email address.
Basically, we will follow these steps to setup your bounce handling:
In order to setup catch-all email address on your server, you will need to access your domain (or server control panel). In this document, we will explain how to setup a catch-all domain in Plesk and cPanel control panels.
Login to your Plesk control panel
Click "Mail" icon on the main control panel screen
Click "Preferences" icon
Select "Forward to address" option and set an email address (shouldn't be existing)
Important: The email address you set as "catch-all" will start to receive all emails which have been sent to non-existing email addresses on your domain. These emails will be fetched by Oempro once your setup is completed.
Save catch-all settings
That's all. You have successfully set catch-all settings in your Plesk control panel.
Login to your cPanel
Click "Default Email Address" icon in the main menu
Enter the email address you wish to forward to (ex: [email protected])
Some shared hosting companies such as Hotmonster.com does not allow you to set catch-all email address in your cPanel.
Save default email address settings
Okay, you have successfully created catch-all email address on your server. To make things easier, let's assume that you have set "[email protected]" catch-all email address on yourdomain.com control panel. We will be using this dummy catch-all address for the rest of the guide.
Now, it's time to make a decision about how to let Oempro monitor [email protected] catch-all email address. This can be in two ways:
This is the easier way and compatible with almost all server and hosting types (dedicated, shared, grid, VPS, etc.). Just follow these easy steps to complete the setup:
Since you have set [email protected] catch-all email address, setup a POP3 email address on your control panel for [email protected].
Now, all emails coming to invalid email addresses will be caught and forwarded to [email protected].
Login to Oempro administration area (http://yourdomain.com/oempro/admin/)
Click "Settings" link on the top right menu
Click "Email Delivery" link on the left menu and then "Bounce Handling" tab
Setup your bounce handling settings and once you click "Save" button, Oempro try to connect and test your POP3 account settings.
"POP3 Connection" method should be selected as "Process Type" and POP3 email account information should be entered correctly. Otherwise connection problems may occur.
Add oempro/cli/pop3_bounce.php to your CRON job (scheduled tasks in Windows) list. Click here for instructions.
That's all. You have successfully set your Oempro to monitor POP3 email address frequently for any possible bounce delivery report email.
Email piping needs more server knowledge and linux/unix/mac os x operating system. Unfortunately, Windows users can not get benefit of this high-performance bounce handling method.
Email piping means, all received emails to a specific email address are piped/forwarded to a script on the server. There's no POP3 or IMAP between the forwarded email and the script.
You have successfully setup catch-all email address on your server above. Now, you will be setting up email piping for this catch-all email address, therefore received emails can be piped to the Oempro bounce handling module properly.
Important: When you setup email piping on your server, be sure that there's no POP3 account with the same name. Let's say, if you have setup [email protected] catch-all email address and setup email piping for "bounce", be sure that there's no POP3 account with the name of "bounce". Otherwise, email piping will not work.
We have written specific descriptions for different server environments. Please proceed based on the server environment you are using below.
Plesk powered servers come with Qmail mail transfer agent. It's easy to setup email piping in Plesk environment. Follow these steps:
Change your directory to Oempro directory
cd /var/www/vhosts/yourdomain.com/httpdocs/oempro
Be sure that cli/ directory and all files in it are set as executable (0755). If not, change the permissions to 0755:
chmod -R 0755 cli
Set the httpdocs directory under your domain as executable:
chmod 0755 /var/www/vhosts/yourdomain.com/httpdocs
Change your directory to the qmail mail names directory:
cd /var/qmail/mailnames/yourdomain.com
Create a new alias file named as .qmail-xxxxx (xxxxx is the email address you wish to set for bounce handling.
vi .qmail-bounce
Type the following code and save the file:
|/var/www/vhosts/yourdomain.com/httpdocs/oempro/cli/bounce.php
Important: Be sure that you have not created a POP3 account in your Plesk control panel with the same as you have set as alias. Otherwise, email piping will not work.
That's all. You have successfully created email alias inside Qmail directory and piped it to Oempro's bounce handling module.
Change your directory to Oempro directory
cd /var/www/vhosts/yourdomain.com/httpdocs/oempro
Be sure that cli/ directory and all files in it are set as executable (0755). If not, change the permissions to 0755:
chmod -R 0755 cli
Set the httpdocs directory under your domain as executable:
chmod 0755 /var/www/vhosts/yourdomain.com/httpdocs
Checking whether the shebang is correctly set within the script or not. It should be a very first line in your script and must specify the path to the php binary. Suitable values may be:
#!/usr/bin/php -q
#!/usr/local/bin/php -q
#!/usr/local/php5/bin/php5 -q
Login to your cPanel control panel
Click "Forwarders" link under "Mail" group
Click "Add Forwarder" button
Fill-in the form just like the one in the example below. Be sure that you have entered the address to forward as the same as you have set as catch-all email address domain.
For this guide we will use the following:
Create the proper aliases and pipe them to the script
Edit alises
# nano /etc/aliases
Add the alias with piping to the file:
bounce: "|php /var/www/html/cli/bounce.php"
or
bounce: "|/usr/bin/php /var/www/html/cli/bounce.php"
Save and exit and update aliases database:
# newaliases
Next is to set up the catch-all in postfix to point to the "bounce" alias.
Edit the virtual file of postfix:
# nano /etc/postfix/virtual
Add the catch-all line:
@mydomain.com [email protected]
Save and exit.
Now edit the postfix config file to use the virtual database:
# nano /etc/postfix/main.cf
Add the following line:
virtual_maps = hash:/etc/postfix/virtual
Save and exit.
Note: This is only needed if postfix hasn't been configure to work with the virtual database yet, if you find the above line already in the config file just ignore this step.
Reload Postfix:
# postfix reload
Any mail now delivered to @mydomain.com will now be forwarded to [email protected] and processed by the bounce script while keeping the :X-Original-To:" intact. Oempro is now able to process your bounce emails.
Unfortunately, email piping feature can not be used in Windows environment.
This is the last step. Once you have setup your bounce handling on the server properly, you will need to set Oempro to send emails with a return-path to the domain where you have set the catch-all forwarding. Let's say, if you have set [email protected] as catch-all email address, you need to set this in Oempro by following these steps:
Login to Oempro administration area (http://yourdomain.com/oempro/admin/)
Click "Settings" link on the top right menu
Click "Email Delivery" link on the left menu and then "Bounce Handling" tab
Enter catch-all domain based on your settings and save your settings.
The only way to test your bounce handling is to follow these steps:
Check "Send notification emails on detection to [email protected] email address"
Save the form
If you receive this notification email, it means that you have successfully set the bounce handling on your server.
If you didn't receive the system notification email as described above, please check for the following:
For email piping method:
For POP3 method: