EOT Notification Fail with S2Member Pro 170524 (and total website crash)

EOT was not working (not demoting and not sending EOT notifications). I tested by repeatedly adding new users with Various EOTs , made sure their profile was checked to receive emails, and received no emails after EOTs had passed.
What I have tried so far:

  1. Deleted Pro using Filezilla, then reinstalled it.
  2. Per other posts I checked WP-Cron and didn’t see any S2Member events in the schedule. I added ws_plugin__s2member_auto_eot_system__schedule to run every 10 minutes. 50% success: Demotion began working, but EOT notifications still did not send.
  3. Also per other posts, I installed the plug-in Email Log to see if S2M was attempting to send notifications. Email Log revealed that new member emails were being sent, but nothing in the log about EOT notifications.
  4. Per S2M posts, I added the file /s2-server-scanner.php to the root directory and used browser to look for conflicts, bad installs, etc. Unfortunately, my Browser couldn’t access the server-scanner page, even trying several variations (www / http:/, https:/) Then the heartstopper: When I tried to view my actual website, I found the website was dead - http ERROR 500 Page Isn’t Working.
  5. Deleted the server-scanner file
  6. Have Bluehost trying to get my site back up.
    I’ll host my own pity party about the site being down, but would really APPRECIATE any insight to get the EOT Notifications working when the site is restored. Should there be an additional wp-cron for notifications? Is a hook missing in my install? Thank you in advance.

I’d start with your host. What versions of PHP, MySQL, and Apache/nginx are you using? Are you using Varnish or object caching?

Thanks, Tim. Not using Varnish or caching, but did need to update my PHP. (Will take your suggestion and check MySQL and Apache.) Hope to see if that helps the EOT Notification issue, but site is still down 8 hours after adding the s2-server-scanner. Bluehost couldn’t figure out why the server-scanner crashed my site, so I had them reinstall yesterday’s backup. Right now the site just shows the index, which I guess is progress over the Error 500, but not helpful to the site’s users.

Neither can I. That’s why I think your problems lie with your host, though. I remember a problem like this that someone reported a few years ago (on the old forums) and it turned out that the problem was that the host was running an absolutely ancient version of MySQL.

Thanks, Tim. That’s where I’m starting. Bluehost is way understaffed right now - Wait times just to talk to someone are over an hour. I’ve had to call 6 times so far… literally 6 hours of Musak waiting to speak to a human. Two calls ago I found someone who really knew her stuff. Was on the phone 1.5 hours (first hour was wait time), making progress and then the phone line disconnected and she didn’t call me back. Ugh.

My suggestion in that case would be to change host. I always recommend Lightning Base; @JediShark recommends SiteGround. (We can supply affiliate links if you’re interested.) Both should be able to move your site without extra cost or your needing to contact Bluehost.

1 Like

Definitely will consider. I prepaid for several years, so have to check their cancellation policy. Have been on the phone for 2 and a half hours just this morning - still on. (first half hour on hold). Finally their ‘solution’ was to hire a developer or wait two days till the woman who had been helping me returns to work, but I’m not accepting that. Trying to get them to finish what the woman started, since it is in ‘the notes’, but they are 'afraid to screw things up more. All this just to get back so I can test your suggestion of updating PHP, MySQL, & Apache.

Hi, Tim. My website is now back online. www.MontgomeryCountyBeekeepers.com So I’m back to resolving EOT Notification fails.
As you recommended, I had BlueHost update the PHP. (MySQL and Apache “are the most up to date versions Bluehost uses on shared servers”)
I’ve tested the EOT Notification by:

  • setting up the Strip Options “EOT Emails” with triggers that include -1,0,1,
  • adding a user, setting the EOT to “Tomorrow”
  • running the wp cron event ws_plugin__s2member_auto_eot_system__schedule c_ws_plugin__s2member_auto_eots::auto_eot_system()

Cron returns a message that it ran. But no emails show up in the Email log (or in my test email inbox)
My best guesses are that

  • Perhaps there is missing S2Member chron event
  • Perhaps the S2Member chron event that is listed needs to be deleted and re-entered properly

Thank you again for your help.

  • Phil

Where and how have you got this message? I ask because I assume that you are relying on WP’s own pseudo-cron, and it’s notoriously unreliable.

As I suspected, that tells you nothing. A cron in WP isn’t a real cron. Despite appearances, it doesn’t run at a specific time. It needs to be triggered by someone visiting the site. If that doesn’t happen, then the cron will never run.

You need to set up a real cron. How this is done different from host to host, but here are Bluehost’s instructions: https://my.bluehost.com/cgi/help/411

Thanks. I will investigate. ALSO - can you confirm that the wp cron event is listed correctly?? I added it myself, based on reading through S2’s change logs/wish lists/etc. Seems like it should have been there already. I didn’t add anything but the one line, so should I have added a hook, or php, argument, etc. …

Anything beyond adding interval, the command c_ws_plugin__s2member_auto_eots::auto_eot_system()
and my email?

You can’t use the s2Member code for the command. That is designed to work with WordPress. You need something that will work with native Linux, and that code just needs to tell Linux to run a cronjob. When the cronjob runs, then the s2Member code should be triggered if the other conditions for triggering the code have also been met.

Try something like this:

wget -q -O - http://www.montgomerycountybeekeepers.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

Thanks, Tim. I don’t know Linux. Do I simply paste:
wget -q -O - http://www.montgomerycountybeekeepers.com/wp-cron.php?doing_wp_cron >/dev/null 2>&1

into the command field?
If something goes wrong, will this crash my site (just got back on line after 3 days – the whole county uses our site to report honey bee swarms which our volunteers then relocate.)

(had 2 swarm reports already this morning)

Yes.[quote=“MCBA, post:15, topic:2417”]
If something goes wrong, will this crash my site
[/quote]

Very unlikely. If it doesn’t work, it will just do nothing. And it’s easy to undo anyway: you just remove it.

But your site is down anyway. I just checked and got the following errors:

Notice: Undefined index: page in /home4/montgmom/public_html/wp-content/plugins/custom-css-js-php/core/class.initiate-core.php on line 32

Notice: Use of undefined constant __DIR__ - assumed '__DIR__' in /home4/montgmom/public_html/wp-content/plugins/s2member/src/vendor/autoload.php on line 5

Warning: require_once(__DIR__/composer/autoload_real.php) [function.require-once]: failed to open stream: No such file or directory in /home4/montgmom/public_html/wp-content/plugins/s2member/src/vendor/autoload.php on line 5

Fatal error: require_once() [function.require]: Failed opening required '__DIR__/composer/autoload_real.php' (include_path='.:/usr/php/56/usr/lib64:/usr/php/56/usr/share/pear') in /home4/montgmom/public_html/wp-content/plugins/s2member/src/vendor/autoload.php on line 5

That suggests to me that Bluehost still has you on an old version of PHP. You can see the problem if you go here and read Jason’s comments: Latest update crashes the site

…but when I access the site, it appears to be working, even from two different browsers and both while logged in and as a not-logged-in guest -??? The error you posted is referencing s2Member. Any clues there?
/home4/montgmom/public_html/wp-content/plugins/s2member/src/vendor/autoload.php

I suspect you are running some sort of caching.

Yes, that’s why I referred you to the other thread. It looks like the version of PHP that you’re running is too old to support s2Member.

hmmm. so confused. I used another computer, and could browse sections of the site I haven’t browsed before. No error messages.