Enable WP Mail Function on Ubuntu

Most Simple Way to Send PHP e-mails:-

There is many ways to send emails for the server but here is most professional & simple solutions for sending email on web server. Which uses PHP’s mail() function to get it done quickly and simply.

1. Install Postfix

Let’s update the package database first.

$ sudo apt-get update

Install mailutils, which will automatically install Postfix.

$ sudo apt install -y mailutils

On the first Postfix configuration screen, select OK by pressing TAB and ENTER

Select Internet Site and press ENTER

System mail name should be your domain name eg. example.com, pressENTER.

Package should now be installed.

2. Configure Postfix

Edit the Postfix configuration file.

$sudo nano /etc/postfix/main.cf

Towards the bottom of the file, find the line inet_interfaces = all. (Press CTRL + W to search)
Change it to:

/etc/postfix/main.cf

inet_interfaces = loopback-only

Save file and exit. (Press CTRL + X, press Y and then press ENTER)

Lastly, let’s restart Postfix.

$ sudo systemctl restart postfix

3. Test Postfix

We’ll now send a test email message. Make sure to replace [email protected] with your own email address.

echo “Test Email message body” | mail -s “Email test subject” [email protected]

Don’t forget to check your spam folder.
If you still haven’t received any mail, check the mail error log.

$ sudo tail /var/log/mail.log

If the mail log is empty or doesn’t exist, try parsing the syslog. This will return the last 50 entries for postfix.

$ sudo tail -f -n 50 /var/log/syslog | grep postfix

If the syslog is empty and you still haven’t received any test email, it’s possible that the test email was rejected by the recipient server. You should check to see if anything has bounced back to your mail folder.

$ sudo less /var/mail/$(whoami)

Press uppercase G to scroll to the bottom of the file and lowercase q to quit. The $(whoami)
variable returns the currently logged in user.

4. Test PHP mail()