Files
Kevin Codex 1f25242207 chore(hosts): move the explorer to explorer.twigpine.com
The explorer, its docs and its agent files now name explorer.twigpine.com
and node / node2 / node3.twigpine.com, and the proxy rules call the nodes
by those names. explorer.gitlawb.com forwards pages to the new address;
the API proxy, llms.txt, skill.md and the raw docs keep answering there.
The Manila node keeps its current address, and the documented node default
for ICAPTCHA_URL is unchanged because it is the value the node ships with.
2026-10-13 15:51:30 +08:00

81 lines
1.9 KiB
JSON

{
"redirects": [
{
"source": "/",
"has": [
{
"type": "host",
"value": "explorer.gitlawb.com"
}
],
"destination": "https://explorer.twigpine.com/",
"permanent": true
},
{
"source": "/((?!api/|nodes/|node-info|og/|llms\\.txt|skill\\.md|docs/[^/]+\\.md).+)",
"has": [
{
"type": "host",
"value": "explorer.gitlawb.com"
}
],
"destination": "https://explorer.twigpine.com/$1",
"permanent": true
}
],
"rewrites": [
{
"source": "/repos/:owner/:name",
"destination": "/api/repo-page?owner=:owner&name=:name"
},
{
"source": "/og/repos/:owner/:name/:version",
"destination": "/api/og?owner=:owner&name=:name&v=:version"
},
{
"source": "/docs",
"destination": "/api/docs-page"
},
{
"source": "/docs/:slug",
"destination": "/api/docs-page?slug=:slug"
},
{
"source": "/api/v1/:path*",
"destination": "https://node.twigpine.com/api/v1/:path*"
},
{
"source": "/node-info",
"destination": "https://node.twigpine.com/"
},
{
"source": "/nodes/node2/node-info",
"destination": "https://node2.twigpine.com/"
},
{
"source": "/nodes/node2/api/:path*",
"destination": "https://node2.twigpine.com/api/:path*"
},
{
"source": "/nodes/node3/node-info",
"destination": "https://node3.twigpine.com/"
},
{
"source": "/nodes/node3/api/:path*",
"destination": "https://node3.twigpine.com/api/:path*"
},
{
"source": "/nodes/manila/node-info",
"destination": "https://manila.gitlawb.com/"
},
{
"source": "/nodes/manila/api/:path*",
"destination": "https://manila.gitlawb.com/api/:path*"
},
{
"source": "/(.*)",
"destination": "/index.html"
}
]
}