fix(docs,www) - add in redirects for high-traffic 404s (#51500)

## Problem

Missing redirects for changed paths and pages leading to an extra ~1500
404's in the past 24 hours for folks (and bots) browsing our web
properties.

## Solution

Added redirects

## Preview links


https://zone-www-dot-com-git-kody-devrel-699-high-traff-584bc9-supabase.vercel.app/
(though most of these are docs links so the behavior actually won't be
visible in the preview)
This commit is contained in:
Kody Jackson authored and GitHub committed 2026-10-13 08:55:38 -05:00
1 parent 0f238b5296
commit 6f45cf8f63
1 file changed
+396
+396
View File
@@ -3429,4 +3429,400 @@ module.exports = [
{ permanent: true, source: '/homepage.md', destination: '/index.md' },
{ permanent: true, source: '/.md', destination: '/index.md' },
{ permanent: true, source: '/index', destination: '/' },
// High-traffic 404s
{ permanent: true, source: '/docs/graphql', destination: '/docs/guides/graphql' },
{
permanent: true,
source: '/docs/guides/storage/management/pricing',
destination: '/docs/guides/storage/pricing',
},
{
permanent: true,
source: '/changelog/29260-upcoming-changes-to-supabase-api-keys',
destination: 'https://github.com/orgs/supabase/discussions/29260',
},
{
permanent: true,
source: '/docs/guides/platform/project-pausing',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/platform/project-pausing.md',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/platform/pausing',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/platform/free-plan-pausing',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/local-development/cli/migrations',
destination: '/docs/guides/local-development/database-migrations',
},
{
permanent: true,
source: '/docs/guides/auth/auth-passkeys',
destination: '/docs/guides/auth/passkeys',
},
{
permanent: true,
source: '/docs/guides/platform/security',
destination: '/docs/guides/security/platform-security',
},
{
permanent: true,
source: '/docs/guides/database/connection-pooling',
destination: '/docs/guides/database/supavisor',
},
{
permanent: true,
source: '/docs/guides/platform/access-tokens',
destination: '/docs/guides/platform/personal-access-tokens',
},
{
permanent: true,
source: '/docs/guides/deployment/branching/billing',
destination: '/docs/guides/platform/manage-your-usage/branching',
},
{ permanent: true, source: '/docs/guides/api/api-settings', destination: '/docs/guides/api' },
{ permanent: true, source: '/docs/reference/llms.md', destination: '/llms.txt' },
{ permanent: true, source: '/docs/guides/api/rest', destination: '/docs/guides/api' },
{
permanent: true,
source: '/docs/guides/platform/billing-on-free-plan',
destination: '/docs/guides/platform/billing-on-supabase',
},
{
permanent: true,
source: '/docs/guides/functions/deno2',
destination: '/docs/guides/functions',
},
{
permanent: true,
source: '/docs/guides/database/row-level-security',
destination: '/docs/guides/database/postgres/row-level-security',
},
{
permanent: true,
source: '/docs/guides/auth/auth-email-password',
destination: '/docs/guides/auth/passwords',
},
{ permanent: true, source: '/docs/mcp', destination: '/docs/guides/ai-tools/mcp' },
{
permanent: true,
source: '/docs/guides/database/pagination',
destination: '/docs/reference/javascript/using-modifiers-overridetypes',
},
{
permanent: true,
source: '/docs/guides/platform/audit-logs',
destination: '/docs/guides/security/platform-audit-logs',
},
// High-traffic 404s, batch 2
{
permanent: true,
source: '/docs/guides/observability/automate-with-agents/all',
destination: '/docs/guides/observability/automate-with-agents',
},
{
permanent: true,
source: '/docs/guides/platform/project-status',
destination: '/docs/guides/platform',
},
{
permanent: true,
source: '/docs/guides/deploy/managing-environments',
destination: '/docs/guides/deployment/managing-environments',
},
{
permanent: true,
source: '/docs/guides/api/sql-to-resth',
destination: '/docs/guides/api/sql-to-rest',
},
{
permanent: true,
source: '/docs/guides/getting-started/quickstarts/react-native',
destination: '/docs/guides/auth/quickstarts/react-native',
},
{
permanent: true,
source: '/docs/guides/database/database-performance',
destination: '/docs/guides/database/query-optimization',
},
{
permanent: true,
source: '/docs/guides/storage/uploads/signed-urls',
destination: '/docs/guides/storage/serving/downloads',
},
{
permanent: true,
source: '/docs/guides/realtime/testing',
destination: '/docs/guides/realtime',
},
{
permanent: true,
source: '/docs/guides/platform/org-mfa-enforcement',
destination: '/docs/guides/platform/access-control',
},
{
permanent: true,
source: '/docs/guides/database/backups',
destination: '/docs/guides/platform/backups',
},
{
permanent: true,
source: '/docs/guides/observability/logs/query-logs-with-sql',
destination: '/docs/guides/observability/logs',
},
{
permanent: true,
source: '/docs/guides/api/api-keys/models',
destination: '/docs/guides/getting-started/api-keys',
},
{
permanent: true,
source: '/docs/guides/platform/free-plan-limits',
destination: '/docs/guides/platform/billing-on-supabase',
},
{
permanent: true,
source: '/docs/guides/platform/manage-your-usage/database-size',
destination: '/docs/guides/platform/database-size',
},
{
permanent: true,
source: '/docs/guides/platform/upgrading-and-pausing',
destination: '/docs/guides/platform/upgrading',
},
{
permanent: true,
source: '/docs/guides/platform/fair-use-policy',
destination: '/docs/guides/platform/cost-control',
},
{
permanent: true,
source: '/docs/guides/auth/oauth-server/overview',
destination: '/docs/guides/auth/oauth-server',
},
{
permanent: true,
source: '/docs/guides/api/rest/pagination',
destination: '/docs/reference/javascript/using-modifiers-overridetypes',
},
{
permanent: true,
source: '/docs/guides/integrations/build-a-supabase-integration/oauth-scopes',
destination: '/docs/guides/integrations/build-a-supabase-oauth-integration',
},
{
permanent: true,
source: '/docs/guides/platform/project-settings',
destination: '/docs/guides/platform',
},
{
permanent: true,
source: '/docs/guides/getting-started/quickstarts',
destination: '/docs/guides/getting-started',
},
{
permanent: true,
source: '/docs/guides/api/pagination',
destination: '/docs/reference/javascript/using-modifiers-overridetypes',
},
{
permanent: true,
source: '/docs/guides/platform/projects',
destination: '/docs/guides/platform',
},
{
permanent: true,
source: '/docs/guides/getting-started/quickstart',
destination: '/docs/guides/getting-started',
},
{
permanent: true,
source: '/docs/guides/security/shared-responsibility-model',
destination: '/docs/guides/deployment/shared-responsibility-model',
},
{
permanent: true,
source: '/docs/guides/database/database-size',
destination: '/docs/guides/platform/database-size',
},
{ permanent: true, source: '/docs/guides/ai/mcp', destination: '/docs/guides/ai-tools/mcp' },
{
permanent: true,
source: '/docs/guides/auth/identity-linking',
destination: '/docs/guides/auth/auth-identity-linking',
},
{
permanent: true,
source: '/docs/guides/local-development/cli/github-action/testing',
destination: '/docs/guides/deployment/ci/testing',
},
{ permanent: true, source: '/docs/guides/platform/limits', destination: '/docs/guides/platform' },
{
permanent: true,
source: '/docs/guides/platform/management-api',
destination: '/docs/reference/api/introduction',
},
{
permanent: true,
source: '/docs/guides/database/extensions/btree_gist',
destination: '/docs/guides/database/extensions',
},
{
permanent: true,
source: '/docs/guides/deployment/branching/pricing',
destination: '/docs/guides/platform/manage-your-usage/branching',
},
{
permanent: true,
source: '/docs/guides/security/gdpr',
destination: '/docs/guides/security/gdpr-compliance',
},
{
permanent: true,
source: '/docs/guides/platform/network-bans',
destination: '/docs/guides/platform/network-restrictions',
},
{
permanent: true,
source: '/docs/guides/database/extensions/moddatetime',
destination: '/docs/guides/database/extensions',
},
{
permanent: true,
source: '/docs/guides/platform/high-availability',
destination: '/docs/guides/platform/read-replicas',
},
{
permanent: true,
source: '/docs/guides/platform/pausing-projects',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/auth/auth-otp',
destination: '/docs/guides/auth/auth-email-passwordless',
},
{
permanent: true,
source: '/docs/guides/platform/manage-your-usage/spend-cap',
destination: '/docs/guides/platform/cost-control#spend-cap',
},
{
permanent: true,
source: '/docs/guides/deployment/branching/overview',
destination: '/docs/guides/deployment/branching',
},
{
permanent: true,
source: '/docs/guides/platform/compliance',
destination: '/docs/guides/security',
},
{
permanent: true,
source: '/docs/guides/auth/jwt-signing-keys',
destination: '/docs/guides/auth/signing-keys',
},
{
permanent: true,
source: '/docs/guides/api/migrating-to-new-api-keys',
destination: '/docs/guides/getting-started/migrating-to-new-api-keys',
},
{ permanent: true, source: '/docs/guides/deployment/ci', destination: '/docs/guides/deployment' },
{
permanent: true,
source: '/docs/guides/database/typescript-support',
destination: '/docs/guides/api/rest/generating-types',
},
{
permanent: true,
source: '/docs/guides/functions/getting-started',
destination: '/docs/guides/functions/quickstart',
},
{
permanent: true,
source: '/docs/guides/database/extensions/pg-safeupdate',
destination: '/docs/guides/database/extensions',
},
{
permanent: true,
source: '/docs/guides/api/rest/generated-types',
destination: '/docs/guides/api/rest/generating-types',
},
{
permanent: true,
source: '/docs/guides/platform/backup-restore',
destination: '/docs/guides/platform/backups',
},
{
permanent: true,
source: '/docs/guides/local-development/cli/seeding-your-database',
destination: '/docs/guides/local-development/seeding-your-database',
},
{
permanent: true,
source: '/docs/guides/auth/quickstarts/flutter',
destination: '/docs/guides/getting-started/quickstarts/flutter',
},
{
permanent: true,
source: '/docs/guides/database/migrations',
destination: '/docs/guides/deployment/database-migrations',
},
{
permanent: true,
source: '/docs/guides/database/overview/advanced/self-hosting/configuration/storage',
destination: '/docs/guides/self-hosting/storage/config',
},
{
permanent: true,
source: '/docs/guides/platform/paused-projects',
destination: '/docs/guides/platform/free-project-pausing',
},
{
permanent: true,
source: '/docs/guides/local-development/cli/github-action/generating-types',
destination: '/docs/guides/deployment/ci/generating-types',
},
{ permanent: true, source: '/docs/guides/platform/sla', destination: '/sla' },
{
permanent: true,
source: '/docs/guides/self-hosting/storage',
destination: '/docs/guides/self-hosting/storage/config',
},
{
permanent: true,
source: '/docs/guides/api/joins-and-nesting',
destination: '/docs/guides/database/joins-and-nesting',
},
{
permanent: true,
source: '/docs/guides/platform/gdpr',
destination: '/docs/guides/security/gdpr-compliance',
},
{
permanent: true,
source: '/docs/guides/platform/manage-your-usage/log-retention',
destination: '/docs/guides/observability/logs',
},
{
permanent: true,
source: '/docs/guides/platform/organizations',
destination: '/docs/guides/platform/access-control',
},
{
permanent: true,
source: '/docs/guides/platform/rate-limits',
destination: '/docs/guides/auth/rate-limits',
},
]