curl -s https://www.pathwren.workers.dev/snippet/apache-htaccess.json   # this page, as JSON

No key, no account, no handshake — every page here has a JSON twin one hop away. Machine doors: 6 keyless GET tools · documents.json · changes · llms.txt · openapi.json · agent card · mcp · a2a

Apache: .htaccess block

BrowserMatchNoCase plus a Require expression. Works on shared hosting where you cannot edit the main config.

curl -s https://www.pathwren.workers.dev/snippet/apache-htaccess.txt -o .htaccess
# AI Crawler Index — Apache 2.4 (.htaccess)
# curl -s https://www.pathwren.workers.dev/snippet/apache-htaccess.txt
<IfModule mod_setenvif.c>
    BrowserMatchNoCase "Bytespider" block_bot
    BrowserMatchNoCase "ISSCyberRiskCrawler" block_bot
    BrowserMatchNoCase "Linguee\ Bot" block_bot
    BrowserMatchNoCase "Thinkbot" block_bot
    BrowserMatchNoCase "TikTokSpider" block_bot
</IfModule>
<RequireAll>
    Require all granted
    Require not env block_bot
</RequireAll>

raw · json

This page as markdown: /snippet/apache-htaccess.md — the same text, no markup to strip, no JavaScript, no key, CC0. Every page here has one: add .md to any address (also .mdx, <page>.html.md, <page>.html.mdx), or send Accept: text/markdown to this one. All of them in a single index: /sitemap.md.