I Am Experimenting with Blocking HTTP1.1

This is a repost promoting content originally published elsewhere. See more things Dan's reposted.

Most of the traffic I get on this site is bots – it isn’t even close. And, for whatever reason, almost all of the bots are using HTTP1.1 while virtually all human traffic is using later protocols.

I have decided to block v1.1 traffic on an experimental basis. This is a heavy-handed measure and I will probably modify my approach as I see the results.

# Return an error for clients using http1.1 or below - these are assumed to be bots
@http-too-old {
    not protocol http/2+
    not path /rss.xml /atom.xml # allow feeds
}
respond @http-too-old 400 {
    body "Due to stupid bots I have disabled http1.1. Use more modern software to access this site"
    close
}

This is quick, dirty, and will certainly need tweaking but I think it is a good enough start to see what effects it will have on my traffic.

A really interesting experiment by Andrew Stephens! And love that he shared the relevant parts of his Caddyfile: nice to see how elegantly this can be achieved.

I decided to probe his server with cURL:

~ curl --http0.9 -sI https://sheep.horse/ | head -n1
HTTP/2 200
~ curl --http1.0 -sI https://sheep.horse/ | head -n1
HTTP/1.0 400 Bad Request
~ curl --http1.1 -sI https://sheep.horse/ | head -n1
HTTP/1.1 400 Bad Request
~ curl --http2 -sI https://sheep.horse/ | head -n1
HTTP/2 200

Curiously, while his configuration blocks both HTTP/1.1 and HTTP/1.0, it doesn’t seem to block HTTP/0.9! Whaaa?

It took me a while to work out why this was. It turns out that cURL won’t do HTTP/0.9 over https:// connections. Interesting! Though it presumably wouldn’t have worked anyway – HTTP/1.1 requires (and HTTP/1.0 permits) the Host: header, but HTTP/0.9 doesn’t IIRC, and sheep.horse definitely does require the Host: header (I tested!).

I also tested that my RSS reader FreshRSS was still able to fetch his content. I have it configured to pull not only the RSS feed, which is specifically allowed to bypass his restriction, but – because his feed contains only summary content – I also have it fetch the linked page too in order to get the full content. It looks like FreshRSS is using HTTP/2 or higher, because the content fetcher still behaves properly.

Andrew’s approach definitely excludes Lynx, which is a bit annoying and would make this idea a non-starter for any of my own websites. But it’s still an interesting experiment.

Dan Q found GCAABPG North Leigh Loop #7

This checkin to GCAABPG North Leigh Loop #7 reflects a geocaching.com log entry. See more of Dan's cache logs.

Completing our loop (minus a couple of DNFs, but plus a couple of nearby caches), this damp geopup and I were really happy to finish with this good-sized cache!

Dan crouches by his French Bulldog on a rural footpath.

TFTC, and for the series, if which this was our favourite and so earns the FP.

Now we’d better go get cleaned and dry!

×

Dan Q found GCAABNW North Leigh Loop #6

This checkin to GCAABNW North Leigh Loop #6 reflects a geocaching.com log entry. See more of Dan's cache logs.

Tougher than we expected to find – not only is this a stealthy container but it’s hidden unusually-thoroughly too! TFTC

I’m increasingly regretting my choice this morning to wear comfortable but not waterproof shoes rather than my not-fully-broken-in walking boots. Between the muddy puddles and the long wet grass, my feet are soaked!

Dan Q found GC1QY29 Can Rabbits Climb Trees??

This checkin to GC1QY29 Can Rabbits Climb Trees?? reflects a geocaching.com log entry. See more of Dan's cache logs.

Coming up from Evergreen/Loop #4 the geohound and I made a poor guess about which side the the hedgerow we ought to be on, and – to avoid having to backtrack – opted to cut through red thicket just East of this cache. The little pupper got stuck and had to be carried, which was when I discovered that her belly was completely caked in thick mud. Eww!

We got here in the end and were delighted to find such a nice cache. TNLN, SL, and took advantage of the concealment provided by a nearby tree to relieve our bladders before continuing North. (Well I appreciated the concealment; the doggo is happy to widdle anywhere!)

Dan Q found GC1QYPN Back to Evergreen

This checkin to GC1QYPN Back to Evergreen reflects a geocaching.com log entry. See more of Dan's cache logs.

The geopup and I are out doing the North Leigh Loop from New Yatt, where we’re temporarily living while our house is dried and damage assessed by the insurance company following a catastrophic flood a few weeks ago.

Between Loop #3 and #4 we took a small diversion to find this cache, and I’m glad that we did! So nice to see a properly-sized (and tenured) cache still rocking it!

Lid was not properly attached by a recent finder, sadly, and the container spilled its contents as I picked it up. But once we’d reassembled it all we were able to sign the log and continue our loop.

TFTC to both the hiders and adopters. FP awarded for being the first decent-sized cache I’ve seen today.

Dan Q did not find GCAABMN North Leigh Loop #3

This checkin to GCAABMN North Leigh Loop #3 reflects a geocaching.com log entry. See more of Dan's cache logs.

While the geohound busied herself with the important task of collecting sticks several times larger than herself, I began the search for what I’d figured would be a QEF.

A French Bulldog pulls at the end of a very large stick, in a woodland.

Within the circle of uncertainty lay an obvious-looking host covered with obvious-looking candidate spots into which to squeeze a cache of this kind. After 15 minutes of searching where it “should” have been I wondered, per previous logs, if it might free fallen, and made a brief search of the mulch and leaf litter underfoot. No luck there either! After a total of nearly 20 minutes of searching, we had to give up.

×

Dan Q found GCAABMJ North Leigh Loop #2

This checkin to GCAABMJ North Leigh Loop #2 reflects a geocaching.com log entry. See more of Dan's cache logs.

Clearly I’ve trained the geohound well, because she found the geotrail out to this GZ before I did!

A French Bulldog on a muddy path.

This cache is definitely benefitting from its layers of defense against the elements: the log, in its inner sanctum, was dry despite moisture getting through all the other layers! TFTC!

×

Dan Q found GCAABME North Leigh Loop #1

This checkin to GCAABME North Leigh Loop #1 reflects a geocaching.com log entry. See more of Dan's cache logs.

Coming to the “start” of this loop having come from the “end” gave the geohound and I a perfect vantage point to sight this QEF. Now it’s time to find out how boggy the trail to #2 is! If it’s as muddy as the one from #8 back to the village then we might need to make an alternative plan!

Dan Q found GC7PC86 North Leigh Number 6

This checkin to GC7PC86 North Leigh Number 6 reflects a geocaching.com log entry. See more of Dan's cache logs.

Coming from Leigh Loop 8 the geohound and I figured we had an easy and direct run here, but intolerable mud at the East end of the field path drove us out onto the road and back before we could get to this cache. Even here, conditions were boggy and crossing the path to improve our certainty of our GPS coordinates was a drag! But we found it in the end pretty easily, although its logbook is so wet as to almost be unsignable! TFTC.

Dan Q found GCAABQ1 North Leigh Loop #8

This checkin to GCAABQ1 North Leigh Loop #8 reflects a geocaching.com log entry. See more of Dan's cache logs.

Since our house flooded a few weeks ago we’ve been living out of a series of short holiday lets, waiting for the floors to dry out and the insurance company to assess the damage, before we’ll hopefully be able to secure a slightly longer tenancy somewhere while repairs are done.

Right now we’re staying in New Yatt. I’ve cached a little around here before, but never this loop, so this morning the geopup and I came out for a walk and to begin this loop… at its end!

After some initial difficulty getting a GPS fix we eventually found a good looking hiding place. Despite this being the first find out this cache and the terrible recent weather, the cache and its log are in fine condition. SL, TFTC!