Resposta Direta
Escolha sua plataforma em Hostnames > Connect through your own platform, copie o endereço das regras e a chave de integração, adicione o pacote open-source para Cloudflare Workers, Next.js ou Caddy e faça o deploy. O domínio se conecta assim que o caminho de verificação responder. Nenhum registro DNS é necessário.
Esta página mostra como conectar um domínio no Integration Mode nas três plataformas que têm uma integração open-source pronta. Cada uma serve os redirecionamentos, links curtos e links de QR code que você gerencia no RedirHub a partir de um arquivo de regras, sem precisar de um novo deploy a cada mudança, e registra cada redirecionamento nas suas análises.
Antes de começar: o endereço das regras e a chave#
- No painel, adicione o domínio em Hostnames e escolha Connect through your own platform.
- Escolha sua plataforma. O painel mostra o endereço das regras para o domínio e a chave de integração do seu workspace, além de um prompt com ambos já preenchidos que você pode colar em um agente de codificação com IA (Claude, Cursor, ChatGPT e outros) em vez de seguir os passos abaixo manualmente.
- Armazene a chave como segredo ou variável de ambiente. O endereço das regras não é segredo, mas não o publique.
Depois de fazer o deploy, a primeira resposta em /_redirhub/check conecta o domínio. O painel verifica a cada 15 minutos, ou imediatamente com Check now.
Cloudflare Workers#
Um Worker na frente da sua origem serve os redirecionamentos e encaminha todas as outras solicitações. Código-fonte e opções completas: redirhub/cloudflare-redirects.
bashnpm install @redirhub/cloudflare-redirectsCriar src/index.ts:
typescriptimport { createWorker } from '@redirhub/cloudflare-redirects'
interface Env {
ACME_RULES_URL: string
ACME_INTEGRATION_KEY: string
}
export default createWorker<Env>({
settings: (env) => ({ rulesUrl: env.ACME_RULES_URL, key: env.ACME_INTEGRATION_KEY }),
})Defina uma rota para o hostname e o endereço das regras em wrangler.toml (o painel mostra os nomes exatos das variáveis para o seu domínio):
tomlname = "shop-redirects"
main = "src/index.ts"
compatibility_date = "2026-11-01"
routes = [{ pattern = "shop.example.com/*", zone_name = "example.com" }]
[vars]
ACME_RULES_URL = "https://rules.example.com/…/TOKEN.txt"Adicione a chave como um segredo e faça o deploy:
bashnpx wrangler secret put ACME_INTEGRATION_KEY
npx wrangler deploy- A rota deve abranger todos os caminhos do hostname, incluindo
/_redirhub/check. - Regras curinga funcionam: quando sua origem responde 404, o Worker redireciona em vez disso.
- Relatórios de 404 funcionam: os 404 da sua origem são reportados quando Reportar páginas 404 está ativado para o hostname.
Next.js (Vercel ou self-hosted)#
Os redirecionamentos são executados no seu proxy (Next.js 16) ou middleware (Next.js 15 e anteriores), antes das suas páginas. Código-fonte e opções completas: redirhub/nextjs-redirects.
bashnpm install @redirhub/nextjs-redirectsAdicione o endereço das regras e a chave como variáveis de ambiente (nas configurações do projeto no Vercel, ou .env.local localmente). Nunca prefixe a chave com NEXT_PUBLIC_. Em seguida, crie proxy.ts (ou middleware.ts com export function middleware no Next.js 15 e anteriores):
typescriptimport type { NextFetchEvent, NextRequest } from 'next/server'
import { createProxy } from '@redirhub/nextjs-redirects'
const redirects = createProxy({
rulesUrl: process.env.ACME_RULES_URL,
key: process.env.ACME_INTEGRATION_KEY,
})
export async function proxy(request: NextRequest, event: NextFetchEvent) {
const answer = await redirects(request, event)
if (answer) return answer
// … sua própria lógica de proxy, ou nada
}- Chame-o primeiro, antes das reescritas e do tratamento de locale.
- O matcher deve permitir
/_redirhub/checke os caminhos pelos quais você faz o redirecionamento passar. Um matcher que ignora todos os caminhos com um ponto também ignora regras como/old.html. - Os redirecionamentos em
next.configsão executados antes do proxy, então podem sobrepor as suas regras. - O proxy é executado antes da página e nunca vê se o seu app responde 404, então regras curinga e relatórios de 404 não são servidos ali. Para adicionar ambos, use
createRedirects()e seuafterSite(), onde você vê a resposta final, por exemplo em um route handler (veja o README).
Caddy#
Um módulo Caddy v2 para seus próprios servidores. Um único Caddy pode servir todos os seus domínios de integração a partir de um endereço de regras do Workspace, e ele pode emitir certificados HTTPS sob demanda apenas para os nomes de host nas suas regras. Código-fonte e opções completas: redirhub/caddy-redirects.
Compile o Caddy com o módulo:
bashxcaddy build --with github.com/redirhub/caddy-redirectsPara o Caddy, copie o endereço de regras do Workspace do painel da chave de integração em vez do endereço por domínio. Depois, adicione o manipulador ao seu Caddyfile:
text{
on_demand_tls {
permission redirects
}
}
https:// {
tls {
on_demand
}
redirects {
rules_url https://rules.rediredge.com/abc123/TOKEN.txt
key {env.REDIRHUB_INTEGRATION_KEY}
}
reverse_proxy localhost:8080
}- Defina
REDIRHUB_INTEGRATION_KEYno ambiente do Caddy e recarregue o Caddy. - As alterações chegam em um ou dois segundos por push, com polling como alternativa. As últimas regras válidas são mantidas em disco, então uma reinicialização redireciona imediatamente.
- Regras catch-all funcionam quando o restante da rota responde 404. Atrás de
try_filescom um fallback (um aplicativo de página única), o site nunca responde 404, então o catch-all nunca é acionado. - Os relatórios de 404 seguem a opção Report 404 pages de cada hostname. Com
report_404 all, cada 404 do bloco do site é reportado, mesmo para hostnames que você ainda não adicionou ao RedirHub.
Depois de implantar#
- Abra o domínio em Hostnames e clique em Verificar agora. O status deverá mudar para Conectado.
- Teste uma regra numa janela privada ou com
curl -I. - Se o domínio permanecer em Aguardando ou um redirecionamento não for acionado, consulte Solução de problemas do Modo de Integração.
Perguntas frequentes
Sim. Depois de escolher sua plataforma, o painel fornece um prompt com o endereço das regras e a chave já preenchidos. Cole-o no Claude, Cursor, ChatGPT ou em outro agente de codificação.
O proxy é executado antes das suas páginas e nunca vê se seu app responde 404, então regras catch-all e relatórios 404 não são exibidos ali. Use afterSite() de createRedirects(), onde você vê a resposta final.
Sim. Use o endereço das regras do Workspace no painel da chave de integração: uma URL para cada hostname de integração no workspace.
