WordPress Jetpack On An Older Linux Server

Unless you are a regular reader to this blog and were here anyway, I’m guessing you stumbled on it from a search because youre having a problem with the Jetpack plugin for WordPress.  Well, well, well.  Recently, I also forced myself to install the Jetpack plugin;  and as the old saying goes, “…if it were easy to do, it wouldn’t be worth doing.”

Anyway, after installing and enabling Jetpack, I got the error that is apparently quite well-known among the WordPress user community:

Jetpack could not contact WordPress.com: register_http_request_failed. This usually means something is incorrectly configured on your web host.

And like you, I did the requisite amount of Googling; I found a few things, tried a few things, and none of them fixed my problem.  However, once I stumbled on this WordPress Support Forum thread, I realized I might be on to something when I read the post from member “houldsworth1” describing the disabling of SSL if “…your web server is incapable of sending outgoing requests over HTTPS (as opposed to HTTP).”

After thinking about it for a moment, I thought, “Hey, I bet my server is just old enough that this would be a problem for me, too.”  So I attempted the suggested fix and found that the changes recommended by houldsworth1 need a little massaging in order to work with the latest version.  It turns out that instead of just editing line 1290 in the older version, you now have to edit a couple lines (because the developers have put in some extra courtesy checks to help you).

To start out with, like houldsworth1 recommends, the file to edit is:

<WP-ROOT>\wp-content\plugins\jetpack\jetpack.php

…but instead of the exact recommended change, on line 1422 change add the “false &&” to make it look like this:

if ( false && $jetpack->use_ssl[$method] ) {

…and on line 1427, do the same to make it look like this:

if ( false && wp_http_supports( 'ssl' ) ) {

And presto!  Communication, and the setup completed.  It worked for me!

Now here’s a caveat or two:  you aren’t *supposed* to have to do this.  If you need to do this, it probably means your webserver is too old (or has something else wrong) and should be replaced.  Because after you implement this, the Jetpack plugin is calling home over an unsecured channel (non-ssl).

 

2 Comments

  1. Don Juane

    I am curious why this plug-in must “call home” and what data it is sending back to WP main site and why it must do this.

  2. Jeremy Pavlov

    @Don –
    Boy did you open a can of worms. Lots of folks don’t like the way it behaves, but it comes down to this: If you want stats (and other features) tracked in their databases, they have to be sent. And, you’ll need a valid ID in their world to use that service. I’m over-simplifying, but you get the point. The good news of course, is that you don’t *have* to use it. Just like TV, you can turn it off…
    😉
    -Jeremy

Leave a Comment

Your email address will not be published. Required fields are marked *