2

I'm using "Self-activation by email" for new members, and FreeMember for the front end form. However new members are not being sent the activation email.

I have done more testing and found this is true for all my EE sites on Bluehost. I have tried this on a 1.7, 2.7, and 2.8 EE site. I have also tried it with email accounts hosted on Bluehost and those not on Bluehost. None have worked for me.

What I've tested:

  • I can email members (pending or activated members) via the communicate section.
  • I have tried all three options (PHP, SMTP, and SendMail)
  • my local build (MAMP) works fine
  • email debugging doesn't produce any errors
  • using the 're-send activation' link does not work either
  • I disabled email activation, tried a test registration that worked, then enabled activation and it still didn't work.
  • I get the admin notification emails instantly when a new member registers (i.e. the "A new member has registered..." email)
  • I can send email via the "communicate" feature in the CP
  • Password reset emails are working and are sent to the member
  • The same is true for other installs of EE (v1.7, 2.7, 2.8) on three separate Bluehost accounts. All of these are the basic shared hosting plan.

Bluehost support says that logs show the emails are being sent.

Is there anything different about how the Member Activation email messages are sent? It sounds like it could be a global filter that Bluehost has applied that is blocking all of these.

Anyone else have EE on a Bluehost shared server and can test? Can you confirm that new member activation emails are or are not received?

  • 1
    Did you check your php error log for any clues? – Timo002 May 3 '14 at 21:15
  • My understanding is that the activation email only sends if you manually activate an account through the CP. If the member activates it via link in email, I don't think it's meant to send. At least that's how my site has always operated. I don't like it either but I think it's by design. – Benek Lisefski May 3 '14 at 21:17
  • Benek, the email that has the activation link is the one that isn't sent. It isn't a confirmation email. – Doug May 4 '14 at 3:28
  • Yes, nothing in the error logs. – Doug May 4 '14 at 3:36
4

Bluehost (and maybe other hosting companies) filters these activation messages. What I was told by the level III tech:

This was difficult to track down, but I was able to find that the message was getting caught in a spam filter because of the subject of the message subject="Enclosed+is+your+activation+code". This looks to be a common subject that unsolicited messages use, do you know if you are able to customize the subject of your registration notices to prevent the messages being categorized with unsolicited messages?

To fix the issue you need to change the email subject. That can be done by logging into the control panel and then going to:

Design > Message Pages > Email Notifications

Click on "Member Account Activation Instructions". You can change the email subject and body here. I used "Welcome to [sitename]!" as the subject and also changed the body to be a bit more friendly and less spammy.

I then tested with an email address that had failed every time and voila, it worked.

| improve this answer | |
  • Nice work, Doug! I use Bluehost a lot, so this is great info. – Stephen Callender May 16 '14 at 18:23
2

This could be down to security on your mail server rejecting a non-existant "from" address. Does the email address set up for EE return emails actually exist?

You might also want to try putting the mail through a transactional service such as Mandrill at least to debug what's going on. That will tell you whether or not the mail is being sent and just not received or never even being sent.

| improve this answer | |
  • The address does exist, and I'm actually in the middle of setting up Mandril. Bluehost support can see the emails are sent, but never arrive. Time for plan B, Mandrill, which may be better anyway. – Doug May 7 '14 at 20:11
  • 2
    sighhh, Bluehost does not allow outbound email without a static IP address. As it is currently set up Madrill won't work. I reminded why I don't like Bluehost. – Doug May 7 '14 at 20:40
  • @Doug would be nice to accept this answer or repost your comment as an answer and accept that so this question won't appear open. – AllInOne May 14 '14 at 19:09
2

I recommend bypassing BlueHost altogether and getting set up with a 3rd party email service like Mandrill. Install the Escort add-on, enter your API key, and you're done!

The nice thing about the 3rd party services is they track incoming and outgoing messages and provide analytics for each one, so you can do really fine-grained troubleshooting instead of the guesswork of SMTP on your host.

| improve this answer | |
  • Those require a static IP from Bluehost. Certainly simple enough to do, but not something they want to pay for when the core functionality should work. I did try Mandrill and ran into this issue already. – Doug May 14 '14 at 22:33
  • 1
    Using a host's web server's email vs a transactional email service both use core functionality (3rd party add-ons are not necessary to use Mandrill for example). One however is designed explicitly for handling email of this variety, the other is not. As for paying for it, Mandrill is free for up to 12k emails per month. If your site is sending more than that, then a pay service to ensure delivery seems prudent; I don't think any web host will look kindly on that type of volume being sent from a web server. – Derek Jones May 16 '14 at 18:21

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.