Symptoms
-
Emails are sent from the subscription's additional domain using the PHP script with the
mail()
function:<?php
$email="[email protected]";
mail($email, "test from example.com", "This body ", "From: [email protected]:text/plain; charset="utf-8"");
echo 'mail send to '.$email;
?> -
According to the records from the file
/var/log/maillog
, such messages are rejected on some recipient servers:plesk.example.com postfix/pickup[658]: 89263102015: uid=10520 from=<[email protected]>
plesk.example.com postfix/cleanup[801]: 89263102015: message-id=<[email protected]>
plesk.example.com postfix/qmgr[659]: 89263102015: from=<[email protected]>, size=537, nrcpt=1 (queue active)
plesk.example.com postfix/smtp[1049]: 89263102015: to=<[email protected]>, relay=mail.example.net[203.0.113.2]:25, delay=18, delays=0/0.02/18/0.17, dsn=5.0.0, status=bounced (host mail.example.net[203.0.113.2] said: 550 Can't verify main-subscription-domain.com sender. Check your DNS configuration. (in reply to RCPT TO command))
plesk.example.com postfix/bounce[1170]: 89263102015: sender non-delivery notification: 90B7E10204A
plesk.example.com postfix/qmgr[659]: 89263102015: removed -
The domain main-subscription-domain.com is not resolved over DNS.
Cause
When sending emails from the Plesk server using PHP mail()
function, the address like sysuser@main-subscription_domain.com is by default used as the From:
address.
On some recipient SMTP servers, the verification of the sender domain is enabled, and, as the domain main-subscription-domain.com is not resolved over DNS, the verification fails and the messages are rejected.
Resolution
For one domain
-
Go to Domains > example.com > PHP Settings.
-
Add the following line to the field Additional configuration directives:
sendmail_path="/usr/sbin/sendmail -t -i -f [email protected]"
Replace [email protected] with the address which should be used as a sender.
-
Click OK or Apply to save the changes.
For all domains under specific PHP version
-
Go to Tools & Settings > PHP Settings > PHP_version > php.ini.
-
Modify the parameter
sendmail_path
:sendmail_path="/usr/sbin/sendmail -t -i -f [email protected]"
Replace [email protected] with the address which should be used as a sender.
-
Click OK to save the changes.