WordPress, Contact Forms, the new Anti Spam Policy and why it sucks

I’ve been hosting with DreamHost for about a decade, I’ve referred countless people here and overall my experiences have been pretty good. I’ve dealt with server crashes, unexpected downtime, slow loading and a ton of other problems and support has always been pretty good about fixing things in a timely manner.

The new anti-spam policy though, specifically in regards to the spoofing, is terrible, across the board. So much so that not only are the forums here starting to load up with “why isn’t my form working” but so are the WordPress forums, and most people are assuming it’s the plugin (typically Contact Form 7) or the newest version of WordPress that’s breaking things. What’s more confusing is that the form actually does what it’s supposed to, but the email gets bounced by DreamHost servers. The form filler-outter has NO idea that it was never actually received by the recipient.

The fix for this is somewhat simple. Set the FROM address to be an email address on a domain hosted with DreamHost, i.e. contact@hosted-domain.com whereas the Contact Form 7 plugin defaults the From address to be:

[your-name] <[your-email]>

This is fine and dandy, the form will work if you change the From address - which can even be a forwarded address to a Gmail / Yahoo account. What sucks, majorly, is that every form filled out on a website will now show up in your inbox as coming from contact@hosted-domain.com, NOT the person who is sending it.

When I want to hit the REPLY button in my email, I’m now forced to copy the email address that was filled out in the contact form and paste it in the TO address, then send the mail. Not only does this suck, it sucks even more to filter in-bound emails by user, search for usernames / emails and actually have some kind of organization.

I’m tech savvy, I can do this. Most of my clients, who I either host on my account or have had sign up for their own hosting accounts can’t be bothered with this, and they shouldn’t have to. It sucks.

What is a real solution to this? WordPress and the plugin coders are not to blame, everything they’ve done works fine.

I’m currently looking for new web hosts that do not implement a similar policy because it negatively affects my business.

Is there no way to make Contact Form 7 set a Reply-To header on the email? As the name suggests, that’ll make your email client reply to the address specified in that header, rather than to the sender listed in the From header.

Andrew - that’s exactly what the form is designed to do, BUT, DH’s anti-spam policy prohibits the “spoofing” of emails. Since the email isn’t originating from the senders email, rather it’s being generated by the server, the From address must be from a domain hosted with DH, otherwise they are nailing it as spam on their side and nothing ends up in my inbox.

Right, I understand that. What I’m suggesting is that you use a DreamHost From address as required, but set the Reply-To header to indicate what email the user submitting the form entered. For instance:

[code]From: contactform@your-dreamhost-website.com
Reply-To: what_the_user_put_in@gmail.com
Subject: Contact Form message


I’m 100% with Mike Panic! What makes it even more annoying is I have no idea when this change was implemented. I set up a small jeweller website with this contact form and it worked fine a couple months ago. She could have lost a bunch of work because of this and have no idea.

No, this doesn’t work, same problem

You can get this to work if you install a second plugin: http://wordpress.org/extend/plugins/configure-smtp/

You don’t even need to change any settings! Just install, activate, and magically it’ll work again :slight_smile:

Thanks for posting this info and the smtp solution, but why would Dreamhost allow this plug-in installation or SMTP solution if they are trying to prevent the masked mail it would create anyway. Just saying …couldn’t they turn this off too? Seems like the Reply-to solution might be a bit safer in the long run.

That plugin actually we talked about today!

It doesn’t pose a problem because all it does is let a blog on your domain use SMTP. Basically you can’t use it to spam, you can only use it to -be- spammed. Which we’d assume you wouldn’t want to do. I can’t put it on my site and then pass emails through yours, so the worst that would happen is your email is flooded by a spammer, which … well you’d have that possibility anyway, simply by having the contact form in the first place.

Also Contact Form 7 allows you to filter with Akismet - http://contactform7.com/spam-filtering-with-akismet/ - so I think you’d be more concerned about that. :wink:

If anything, the ‘flaw’ (and I use that term loosely) is in Contact Form 7. Jetpack’s contact form works fine, unless you change the ‘reply-to’ email to something off your domain. Realistically, most people use their own domain name for all this.

I have tried both methods above
and get nothing :frowning:
still says message sent ok, but never arrives in my inbox

here is what our current settings page looks like http://ybex.com/d/1ybu9bjcf71il6wa0kp0pbtsb1jonwixwvenxa65.html
any help would be super appreciated



configure-smtp is inactive.

Yeah I deactivated it after it wasnt helping

How had you configured that? It should just be turn on and leave alone :slight_smile:


If you have tried the fixes mentioned in this thread,
and your contact form is still not working

then there may be another problem.

I submitted a ticket to dreamhost and after they did some poking around found this problem:

“We checked your Maildir/new folder and see that it was bounced. This
is happening because Spamhaus has blocked the IP address of your
mailserver. I must now forward this to our Mailblock dept. They will then
be able to request the block be removed by Spamhaus. So everything you
have setup at the moment is now correct. We must now just wait until
Spamhaus removes the block on the email server. I apologize for this
inconvenience in the meantime.”

Is there another contact form I can use in the meantime till this one is fixed?

Ouch, that’d do it.

Alas, if Spamhaus is blocking you, then there’s nothing you can do until that’s rectified. It’ll impact all your email, Contact form won’t matter. :frowning: I’ve been there before, it’s annoying.

Just in case someone stumbles across this there is a way to get dreamhost working with Contact Form 7. The SMTP method didn’t work for me, this way works. The gist is

  1. create a hosted e-mail for the domain you want have send the form
  2. Change you contact form to send from that e-mail
  3. Add to the Additional Headers

"Reply-To: " + whatever contact tag you used [their-email].

Then your forms will be sent from whatever your default is to the target address but when you click reply it will send it to whoever submitted the form.

Full instructions, with pictures.


Thank you!

You’re welcome. I was pretty frustrated so I took a few minutes to screen cap/write it up while I was going through and fixing everything for our clients.

The good news is that the messages are not gone. You can access the missing messages from web forms on your server in the Maildir/new directory. I wrote up a blog post explaining how to access them:

Is anyone else still having trouble with this? I’ve tried everything suggested in this thread and nothing works! :frowning:

EDIT: Nevermind, the configure-smtp plugin works. I was doing it wrong :slight_smile:

Hey Guys,
I struggled with this for hours until I finally arrived at a solution I’m happy with. I wanted to help others dealing with the same issues, so I wrote a blog post. I really hope it helps!