I want to send emails with an rails webapp. I set up an exim server and when looking into the logs, the sending works, but the emails aren't sent really.
I had the same problem with another ISP.
The sender address is hosted on another mailserver, other ISP. I think the problem is, that sending doesn't work because the sender address isn't hosted on the same server. Do you have any advice on this? The logs (exim) tell me the following:
2011-01-01 14:38:06 1PZ1eo-0000Ga-38 <= <> R=1PZ1eo-0000GY-1p U=Debian-exim P=local S=1778
2011-01-01 14:38:08 1PZ1eo-0000Ga-38 => [email protected] R=dnslookup T=remote_smtp H=mx1.emailsrvr.com [98.129.184.131] X=TLS1.0:RSA_AES_256_CBC_SHA1:32 DN="C=US,O=mx1.emailsrvr.com,OU=GT21850092,OU=See www.geotrust.com/resources/cps (c)08,OU=Domain Control Validated - QuickSSL(R),CN=mx1.emailsrvr.com"
2011-01-01 14:38:08 1PZ1eo-0000Ga-38 Completed
[email protected]
is the external sender-address.
Edit with more details
When sending a mail from command line with:
echo "Test" | mail -s Testmail [email protected]
the logs says
2011-01-01 20:45:24 1PZ7OG-0001Vp-Rx <= root@gustav U=root P=local S=360
2011-01-01 20:45:26 1PZ7OG-0001Vp-Rx => [email protected] R=dnslookup T=remote_smtp H=gmail-smtp-in.l.google.com [209.85.229.27] X=TLS1.0:RSA_ARCFOUR_MD5:16 DN="C=US,ST=California,L=Mountain View,O=Google Inc,CN=mx.google.com"
2011-01-01 20:45:26 1PZ7OG-0001Vp-Rx Completed
and I get the mail on my gmail account.
But when sending by webapp (when testing locally with sendmail it works fine) I only get this log output:
2011-01-01 20:50:08 1PZ7Sq-0001X9-L4 <= <> R=1PZ7Sq-0001X7-Jo U=Debian-exim P=local S=1780
2011-01-01 20:50:11 1PZ7Sq-0001X9-L4 => [email protected] R=dnslookup T=remote_smtp H=mx1.emailsrvr.com [98.129.184.3] X=TLS1.0:RSA_AES_256_CBC_SHA1:32 DN="C=US,O=mx1.emailsrvr.com,OU=GT21850092,OU=See www.geotrust.com/resources/cps (c)08,OU=Domain Control Validated - QuickSSL(R),CN=mx1.emailsrvr.com"
2011-01-01 20:50:11 1PZ7Sq-0001X9-L4 Completed
The R= is saying that this item is a bounce and the message-id given in the R= part is the original message-id which failed. You'll need to look at the log-entry for that to see what recipient address was generated and why it failed.
You might also try
exim -bt [email protected]
to see what Exim thinks should be done with a particular address, and add-d
to the command-line to get more debugging information (but beware that there can be a lot to pick through).In general, the location of the sender address (or to be more accurate, the location of the mailbox associated with the sender address) won't affect message sending/receiving when sending from an application running on a different server. There are exceptions to this, for example SPF, so this should always be checked in the DNS and in the sending MTA log file.
The log file data you have given is insufficient to help deduce the problem. The message delivered to
[email protected]
is not the message from your web application, but an error (bounced messaged) caused by the real problem. It's being sent to that address because that's the messageFrom
address.You will need to provide the log file entries before these, which will probably be similar to: