Lighttpd and JetPack

As you may have heard, the creators of WordPress has created a new plugin called JetPack. While I will not explain it as the link to the left will explain it far easier than me (although this link is a good place to start with: Jetpack to the Cloud), I am posting about how it may have issues with Lighttpd.

When it first came out I decided to give it a try and it never worked. Posted on Twitter and people advised about disabling cache software like WP Super Cache or W3 Total Cache. Either way, it never worked. The next thing was to disable Cloudflare which also never worked.

Matt advised me to contact WordPress support and so I did. After a few e-mails, Mike from WordPress got involved. After a few e-mails back and fore, Mike finally came up with the following which I will post word by word.

Thanks 🙂 Here’s what I found out.

Background: to forge the connection, the Jetpack plugin talks to the Jetpack server (hosted at The Jetpack server then makes a separate request behind the scenes back to your blog to make sure your blog is publicly accessible and configured correctly. That second request comes from and goes to

It’s that second request that is failing.

The Jetpack plugin is not even getting loaded when that request is made. I believe this is because lighttpd or something else is using overly aggressive cacheing.

Look at

Both show “XML-RPC server accepts POST requests only.” which is the correct response.

Now look at

Your site still shows the “XML-RPC server accepts POST requests only.” message, when it should show some XML does.

I believe something similar is happening with Jetpack’s Your server is responding with a cached copy as if it were a request to, which does not load all the needed Jetpack code.


And Mike was right, it was Lighttpd. After having a look at Lighttpd and having a little test, the only logical solution I could come up with was the rewrite. And I was right. After Ricko changed it for me, JetPack worked easily. Now, this post would not be complete if I did not write what I changed it to.

url.rewrite-if-not-file = (
“^/(wp-.+).*/?” => “$0”,
“^/images/.*/?” => “$0”,
“^/temp/.*/?” => “$0”,
“^/keyword/([A-Za-z_0-9\-]+)/?$” => “/index.php?keyword=$1”,
“^/.*?(\?.*)?$” => “/index.php$1”

So if you are having a problem with XMP-PRC on Lighttpd, look at the above and give it a try.

Thanks for reading! You may be interested in this …

Join Honeygain - Start earning money by doing nothing.

Need to quote me?

Ellis, M (2011) Lighttpd and JetPack. [online] Tweaked for your Pleasure. Available at: [Accessed 15 May 2022]

Get more spam to your inbox!

Enter your email address to subscribe to Tweaked for your Pleasure and receive notifications of new posts by email.

Join 166 other subscribers.

0 0 votes
Article Rating
Notify of

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Inline Feedbacks
View all comments