I don't think relying on the presence of WP-Super-Cache would be particularly reliable, and that's the only thing I see in the headers that would help, so maybe there are zero common HTTP headers in a WordPress install?

could you check for 200's on the associated RSS feed page?
–
Kevin BurkeJun 7 '12 at 7:28

1

Why exactly do you want this? Are false positives or false negatives worse? What about a site that generates the pages in Wordpress and exports a static dump of all pages periodically? (e.g. thespace.org)
–
rjmunroJun 7 '12 at 16:01

Neither is wp-super-cache available on all wordpress installations, nor is there any fixed format in the URLs. While the permalinks settings page do give some fixed settings for URL schemes which can be used, anyone can just use any custom URL scheme. For example, if anyone just decides to use only the page/post name in the URL, it is more or less impossible to figure out if it is a Wordpress website.

The presence of xmlrpc can be used to detect, but again, this can be disabled.

And finally, even if you do a full get on the URL, it is still not 100% possible to detect if the page is built using wordpress. It all depends on the theme template and how it is developed.

One fairly reliable way is to look for the presence wp-login and wp-admin. But even these could also be moved. I'd go for this way though.

I imagine any site out there can redirect or 404 at such URL, what behavior here is specific and identifies site as WP?
–
Rarst♦Jun 7 '12 at 9:09

@Rarst Yes - that's the caveat. It's possible for sites to spoof this, and there may be some that use the page_id variable already. Any sort of detection method using headers can probably be spoofed, so I don't think it's worth worrying too much about that. Which just leaves false positives for custom CMS. I couldn't think of a more WordPress-specific variable that would be less likely to be used elsewhere. Is there one?
–
NickJun 7 '12 at 9:16