← Sandbox SDK / sandbox / guides
Nakonfigurujte URL adresy náhledu na vlastní doméně
Nastavte zástupné DNS, routy a TLS, aby exposePort() URL adresy pro náhled fungovaly na vaší doméně. Podrobnosti o nasazení Workeru a image sandboxu najdete v Nasazení aplikace Sandbox.
URL adresy náhledu vyžadují zástupný záznam DNS, protože každý zveřejněný port získá jedinečnou subdoménu: https://8080-abc123.yourdomain.com.
.workers.dev doména nepodporuje zástupné subdomény, takže preview URL, které musí být dostupné na veřejném hostname mimo lokální vývoj, vyžadují vlastní doménu.
Předpoklady
- Aktivní zóna Cloudflare s doménou
- Worker, který používá
exposePort() - Wrangler CLI je nainstalovaný
- Aplikace Sandbox už nasaditelný (Worker + obraz)
Nastavení
Vytvoření zástupného záznamu DNS
V dashboardu Cloudflare přejděte na svou doménu a vytvořte záznam A:
- Typ: A
- Název:
*(zástupný znak) - Adresa IPv4:
192.0.2.0 - Stav proxy: Proxováno (oranžový mráček)
Tím se všechny subdomény směrují přes proxy Cloudflare. IP adresa 192.0.2.0 je dokumentační adresa (RFC 5737), kterou Cloudflare rozpozná, pokud je proxována.
Nakonfigurujte routy Workeru
Do konfigurace Wrangler přidejte zástupnou route:
{
"$schema": "./node_modules/wrangler/config-schema.json",
"name": "my-sandbox-app",
"main": "src/index.ts",
// Set this to today's date
"compatibility_date": "2026-08-28",
"routes": [
{
"pattern": "*.yourdomain.com/*",
"zone_name": "yourdomain.com"
}
]
}"$schema" = "./node_modules/wrangler/config-schema.json"
name = "my-sandbox-app"
main = "src/index.ts"
# Set this to today's date
compatibility_date = "2026-08-28"
[[routes]]
pattern = "*.yourdomain.com/*"
zone_name = "yourdomain.com"Nahraďte yourdomain.com svou skutečnou doménou. Tím se všechny požadavky na subdomény směrují na váš Worker a Cloudflare může automaticky zajistit SSL certifikáty.
Použijte route
Znovu nasaďte Worker, aby se projevila konfigurace tras:
npx wrangler deployPokud toto nasazení mění i image nebo balíček sandboxu, postupujte podle Nasazení aplikace Sandbox pro rollout a párování balíčku s image. Pro změny týkající se pouze trasy můžete stále použít běžný deploy. Použijte --containers-rollout=none pouze pokud záměrně vynecháte aktualizace obrazu kontejneru a instance.
Ověřit
Otestujte, že náhledové URL adresy fungují:
// Extract hostname from request
const { hostname } = new URL(request.url);
const sandbox = getSandbox(env.Sandbox, "test-sandbox");
await sandbox.startProcess("python -m http.server 8080");
const exposed = await sandbox.exposePort(8080, { hostname });
console.log(exposed.url);
// https://8080-test-sandbox.yourdomain.comOtevřete URL adresu v prohlížeči a ověřte, že je vaše služba dostupná.
Řešení potíží
- CustomDomainRequiredError: Ověřte, že váš Worker není nasazen pouze na
.workers.deva že je zástupný (wildcard) DNS záznam a trasa nakonfigurována správně. - Chyby SSL/TLS: Počkejte několik minut na vystavení certifikátu. Ověřte, že je DNS záznam proxovaný a že je ve vašem dashboardu režim SSL/TLS nastaven na "Full" nebo "Full (strict)". Pokud je váš Worker na subdoméně (například
sandbox.yourdomain.com), Universal SSL nepokryje zástupný záznam druhé úrovně*.sandbox.yourdomain.com. Přečtěte si Upozornění k TLS v horní části této stránky, kde najdete možnosti. - URL adresu náhledu nelze přeložit: Ověřte, že existuje zástupný DNS záznam a že je proxovaný. Počkejte 30 až 60 sekund na propagaci DNS.
- Port není přístupný: Ujistěte se, že se vaše služba váže na
0.0.0.0(nelocalhost) a žeproxyToSandbox()se volá jako první ve fetch handleru vašeho Workeru.
Podrobné řešení potíží najdete v Dokumentace ke směrování Workers.
Související
- Nasazení aplikace Sandbox - Nasaďte Worker a obraz
- Preview URLs - Jak fungují náhledové URL adresy
- Zpřístupnění služeb - Vzory pro zpřístupňování portů
- Tunnels API - Bez nutnosti konfigurace
*.trycloudflare.comURL pro vývoj - Směrování Workers - Pokročilá konfigurace směrování
- Cloudflare DNS - Správa DNS