AI companies are violating a basic social contract of the web and and ignoring robots.txt

https://lemmy.world/post/11951288

AI companies are violating a basic social contract of the web and and ignoring robots.txt - Lemmy.World

Put something in robots.txt that isn't supposed to be hit and is hard to hit by non-robots. Log and ban all IPs that hit it.

Imperfect, but can't think of a better solution.

robots.txt is purely textual; you can't run JavaScript or log anything. Plus, one who doesn't intend to follow robots.txt wouldn't query it.
You’re second point is a good one, but you absolutely can log the IP which requested robots.txt. That’s just a standard part of any http server ever, no JavaScript needed.
You’d probably have to go out of your way to avoid logging this. I’ve always seen such logs enabled by default when setting up web servers.

If it doesn’t get queried that’s the fault of the webscraper. You don’t need JS built into the robots.txt file either. Just add some line like:

here-there-be-dragons.html

Any client that hits that page (and maybe doesn’t pass a captcha check) gets banned. Or even better, they get a long stream of nonsense.

server {

name herebedragons.example.com; root /dev/random;

}

I wonder if Nginx would just load random into memory and crash if you did this.
Nice idea! Better use /dev/urandom through, as that is non blocking. See here.
When to use /dev/random vs /dev/urandom

Should I use /dev/random or /dev/urandom? In which situations would I prefer one over the other?

Unix & Linux Stack Exchange
That was really interesting. I always used urandom by practice and wondered what the difference was.
I actually love the data-poisoning approach. I think that sort of strategy is going to be an unfortunately necessary part of the future of the web.

People not intending to follow it is the real reason not to bother, but it’s trivial to track who downloaded the file and then hit something they were asked not to.

Like, 10 minutes work to do right. You don’t need js to do it at all.