Partial fix Contact Form not compatible with Amazon SES (or other SMTP service)

Coop1979

Well-known member
The Contact Form is currently not compatible with the Amazon SES (and I'm guessing other SMTP email services) because it attempts to send the emails from the user's email address, which is not a verified email address within the site's Amazon SES account.

An alternate way to handle this would be for the user's email address to be placed in a "Reply to" field, with the email actually being sent by the default XenForo email address. A similar patch was made for the Wordpress add-on contact form here: http://wordpress.org/support/topic/...rms-patch-fix-incompatibility-with-amazon-ses

As email moves more and more to the cloud, I believe this is an important issue to patch.
 
I currently have my contact form via Gravity Form on the Wordpress front but I'm moving it to Xenporta. I'm using Amazon SES for quite sometime now.
It should be a simple fix for the XF team.
 
The correct way to do this is with the "Sender" header, which is actually designated almost exactly for this situation - it is the email which takes the burden of verification, rather than the "From" address. I don't think Amazon SES supports this yet, though there is a large discussion about it.

This seems like the the best/most correct way to do this. (Prior to 1.1.3, setting a reply-to header wasn't even really possible. Using a reply-to instead can be done in 1.1.3 with a small code change.)
 
@Mike
I have this issue today when using the default contact form and someone tried to use it.
I'm using XF 1.1.5

Zend_Mail_Protocol_Exception: Message rejected: Email address is not verified. - library/Zend/Mail/Protocol/Abstract.php:431
Generated By: Unknown Account, Today at 8:59 AM
Stack Trace
#0 /home/nginx/domains/public/library/Zend/Mail/Protocol/Smtp.php(324): Zend_Mail_Protocol_Abstract->_expect(250, 600)
#1 /home/nginx/domains/public/library/Zend/Mail/Transport/Smtp.php(215): Zend_Mail_Protocol_Smtp->data('Subject: Quant ...')
#2 /home/nginx/domains/public/library/Zend/Mail/Transport/Abstract.php(348): Zend_Mail_Transport_Smtp->_sendMail()
#3 /home/nginx/domains/public/library/Zend/Mail.php(1194): Zend_Mail_Transport_Abstract->send(Object(Zend_Mail))
#4 /home/nginx/domains/public/library/XenForo/Mail.php(177): Zend_Mail->send()
#5 /home/nginx/domains/public/library/XenForo/Mail.php(152): XenForo_Mail->sendMail(Object(Zend_Mail))
#6 /home/nginx/domains/public/library/XenForo/ControllerPublic/Misc.php(199): XenForo_Mail->send('no-reply@quantn...', '', Array, 'smale@ter...', 'Smale')
#7 /home/nginx/domains/public/library/XenForo/FrontController.php(313): XenForo_ControllerPublic_Misc->actionContact()
#8 /home/nginx/domains/public/library/XenForo/FrontController.php(132): XenForo_FrontController->dispatch(Object(XenForo_RouteMatch))
#9 /home/nginx/domains/public/index.php(13): XenForo_FrontController->run()
#10 {main}
 
This is a limitation in SES, as noted. We are now using the "standard" approach for this, but if they choose not to support it, there's not a lot that can easily be done. (I don't consider reply-to to be a good method.) You should contact them to try to get them to support the Sender header.
 
This is a limitation in SES, as noted. We are now using the "standard" approach for this, but if they choose not to support it, there's not a lot that can easily be done. (I don't consider reply-to to be a good method.) You should contact them to try to get them to support the Sender header.
Yes, I will follow the request proposal discussion on Amazon forum and let you know if the feature is implemented.
Right now, I will use an external form for contact.
 
Top Bottom