XF 1.2 Server Error - Zend_Mail_Protocol_Exception: Relaying disallowed (XF v.1.2.5)


I've setup SMTP Email Transport Method, it's working fine however I've noticed that the built in 'Contact Us' form (/misc/contact) doesn't work. Each time someone sends an email from there they get a 'message delivered' confirmation but no message is actually delivered to me and the AdminCP lists the attempt as a server error:

Error Info
Zend_Mail_Protocol_Exception: Relaying disallowed - library/Zend/Mail/Protocol/Abstract.php:431

Stack Trace
#0 /home/***username***/public_html/library/Zend/Mail/Protocol/Smtp.php(324): Zend_Mail_Protocol_Abstract->_expect(250, 600)
#1 /home/***username***/public_html/library/Zend/Mail/Transport/Smtp.php(215): Zend_Mail_Protocol_Smtp->data('Subject: Hello (...')
#2 /home/***username***/public_html/library/Zend/Mail/Transport/Abstract.php(348): Zend_Mail_Transport_Smtp->_sendMail()
#3 /home/***username***/public_html/library/Zend/Mail.php(1194): Zend_Mail_Transport_Abstract->send(Object(Zend_Mail))
#4 /home/***username***/public_html/library/XenForo/Mail.php(177): Zend_Mail->send()
#5 /home/***username***/public_html/library/XenForo/Mail.php(152): XenForo_Mail->sendMail(Object(Zend_Mail))
#6 /home/***username***/public_html/library/XenForo/ControllerPublic/Misc.php(199): XenForo_Mail->send('admin@domain....', '', Array, 'my@email....', 'Steve Jobs')
#7 /home/***username***/public_html/library/XenForo/FrontController.php(347): XenForo_ControllerPublic_Misc->actionContact()
#8 /home/***username***/public_html/library/XenForo/FrontController.php(134): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#9 /home/***username***/public_html/index.php(13): XenForo_FrontController->run()
#10 {main}

Request State
array(3) {
  ["url"] => string(36) "http://www.domain.com/misc/contact"
  ["_GET"] => array(0) {
  ["_POST"] => array(10) {
    ["_guestUsername"] => string(14) "Steve Jobs"
    ["email"] => string(17) "my@email.com"
    ["hash"] => string(161) "88c602f473b3ded5e58c0690d9654841|80371a265efc214c11414e5e0be78d04|http://back11.keycaptcha.com/swfs/ckc/4fbdcae9fb412a0e7ec36ef07ff7ba5b-|530a568696215-.2.2.25|1"
    ["subject"] => string(4) "Hello"
    ["message"] => string(4) "My message, blah blah...."
    ["_xfToken"] => string(8) "********"
    ["redirect"] => string(24) "http://www.domain.com/"
    ["_xfRequestUri"] => string(13) "/misc/contact"
    ["_xfNoRedirect"] => string(1) "1"
    ["_xfResponseType"] => string(4) "json"
What is the problem and how do I fix this?

Thank you for your help!


XenForo developer
Staff member
Your SMTP server provider is limiting based on the "From" header -- they should be checking the "Sender" header if it's there (it will be for contact us emails). The Sender header represents the technical sender (while the From is the person the mail is from/on behalf of).
Hi Mike,

Thanks for your super fast reply!
So basically, are you saying that it's an email provider issue? Because they're telling me it's the email client and that I should fix it there.


XenForo developer
Staff member
It's a provider issue IMO. Since it works in general, you have the right details. However, they're blocking the email in this case. I can almost guarantee that it's because they're reading the email in the "From" header and seeing that it's the email of the person contacting you (not your own email). This is the correct usage of the header, but some email servers will block emails done this way (particularly if they're not designed for this sort of usage).
Thank you! I guess I'll just have to turn that off or create an external form because I'm going round in circles, the provider is trying to say that the fact that it works in general (i.e. all the other emails work) shows that its not a server issue and that the email client in this particular case is to blame. Oh well! :(