简体   繁体   中英

Emails sent through joomla go to SPAM folder

I am using the latest Joomla build for my website. Allso we use a DNS record for having the mail delivered to our own server instead of the server on which the website is hosted.

I have used several contact form components, but every sent mail goes to my SPAM folder. After searching hours on the web (and getting linked to this site frequently) i decided to make a new post.

It does not matter if i use the standard joomla forms, or any component.

Whenever a user fills in a form on my website, the email gets sent. The user receives a copy of its message, and i receive the message of the user. However, this message gets thrown in the spam folder, as phishing.

The sender of the mail always is: username@nameserver.i3d.net; namens; websitename

What do i have to change/enable/disable for this to work?

Thanks in advance.

Patrick.

(Sorry, I'm new to Joomla, but it uses PHP, so this may apply. Also this answer got a little long...)

It might be an issue with the email headers. A lot of email clients will automatically spam-box all mail where the address in the From: header doesn't match the envelope sender . As an analogy, you might not trust a snail-mail letter signed "Your Rich Uncle", mailed in an envelope with a Nigerian return address. Also if your envelope sender has a different domain than the one the email is actually sent from, that's another quick ticket to the junk bin. For more info about Gmail's message blocking policies (and general good practices), you can try this help page .

Here's some basic PHP email-sending code:

$to = $userEmailAddress;
$subj = $emailSubject;
$mesg = $emailMessage;
$headers = implode("\r\n",array(
    "MIME-Version: 1.0"
    ,"Content-type: text/html;charset=iso-8859-1"
    ,"From: WEB_ADMIN_NICE_NAME <WEB_ADMIN@YOURSERVER.COM>" // *** 'From:' header
));
$from = "-fWEB_ADMIN@YOURSERVER.COM"; // *** envelope sender
if(!mail($to, $subj, $text, $headers, $from)){
    //Some error handling...
}

On the first line I commented, you'll want to replace WEB_ADMIN_NICE_NAME with the name you want the email recipient to see (eg "Bill Gates"), and on both lines, replace WEB_ADMIN@YOURSERVER.COM with the actual return address (eg "da_boss@microsoft.com"). Note: whatever address you choose for the return address is where users' replies will be sent.

To reiterate, make sure both lines have the same return address (though the nice name can be anything you like), and make sure that the actual server sending the mail is in fact located at YOURSERVER.COM .

Lastly, I'm not sure where Joomla does its mailing, but if you're totally lost, you can try grepping with -lr for 'mail[[:space:]]*(' .

there are several reasons that could make your email look suspicious to spam filters; to find out which head on to:

http://www.mail-tester.com

grab the email address and send an email from your website to it. Then go back to the page and it will tell you what's wrong.

btw I'm struggling with the same issue,my problem being that on Joomla 2.5.9 apparently when you send html emails, a text-only copy is not added to the message, which is considered "spammish behaviour"

The problem is the i3d.net email address. My personal experience is that their network (31.204.154.0 - 31.204.155.255) is a significant source of spam and they do not action abuse reports. I suggest changing your hosting company.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM