← Sandbox SDK / sandbox / guides
Настройте preview URL на собственном домене
Настройте wildcard DNS, маршруты и TLS, чтобы exposePort() preview-URL работали на вашем домене. Чтобы развернуть Worker и образ sandbox, обратитесь к Разверните приложение Sandbox.
Для Preview URL требуется wildcard DNS, так как каждый открытый порт получает уникальный поддомен: https://8080-abc123.yourdomain.com.
.workers.dev домен не поддерживает wildcard-поддомены, поэтому для preview URL, которые должны быть доступны по публичному имени хоста вне локальной разработки, требуется собственный домен.
Предварительные требования
- Активная зона Cloudflare с доменом
- Worker, который использует
exposePort() - Wrangler CLI установлен
- Приложение Sandbox уже развёртываемый (Worker + образ)
Настройка
Создайте wildcard-запись DNS
В панели управления Cloudflare откройте свой домен и создайте A-запись:
- Тип: A
- Название:
*(wildcard) - Адрес IPv4:
192.0.2.0 - Статус прокси: Проксировано (оранжевое облако)
Это направляет все поддомены через прокси Cloudflare. IP-адрес 192.0.2.0 это адрес из документации (RFC 5737), который Cloudflare распознает при проксировании.
Настройте маршруты Worker
Добавьте маршрут с подстановочным знаком в конфигурацию Wrangler:
{
"$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"Замените yourdomain.com на ваш реальный домен. Это направляет все запросы к поддоменам на ваш Worker и позволяет Cloudflare автоматически выпускать SSL-сертификаты.
Примените маршрут
Разверните Worker заново, чтобы конфигурация маршрута вступила в силу:
npx wrangler deployЕсли это развёртывание также меняет образ sandbox или пакет, следуйте Разверните приложение Sandbox для развёртывания и сопоставления пакета с образом. Для изменений, затрагивающих только маршруты, можно по-прежнему использовать обычный деплой. Используйте --containers-rollout=none только если вы намеренно пропускаете обновления образа контейнера и инстанса.
Проверить
Проверьте, что превью-URL работают:
// 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.comОткройте URL в браузере, чтобы убедиться, что ваш сервис доступен.
Устранение неполадок
- CustomDomainRequiredError: Убедитесь, что ваш Worker развёрнут не только на
.workers.devи что wildcard DNS запись и route настроены правильно. - Ошибки SSL/TLS: Подождите несколько минут, пока будет выпущен сертификат. Убедитесь, что для записи DNS включено проксирование, а в дашборде для режима SSL/TLS выбрано значение "Full" или "Full (strict)". Если ваш Worker размещён на поддомене (например,
sandbox.yourdomain.com), Universal SSL не покроет wildcard-запись второго уровня*.sandbox.yourdomain.com. См. Осторожно: TLS в начале этой страницы, чтобы узнать о доступных параметрах. - Preview URL не разрешается: Убедитесь, что имеется wildcard-запись DNS с включённым проксированием. Подождите 30-60 секунд, пока распространится DNS.
- Порт недоступен: Убедитесь, что ваш сервис привязан к
0.0.0.0(неlocalhost) и чтоproxyToSandbox()вызывается первым в обработчике fetch вашего Worker.
Подробности по устранению неполадок см. в Документация по маршрутизации Workers.
См. также
- Разверните приложение Sandbox - Разверните Worker и образ
- Preview URLs - Как работают preview URL
- Публикация сервисов - Шаблоны для открытия портов
- Tunnels API - Не требует настройки
*.trycloudflare.comURL для разработки - Маршрутизация Workers - Расширенная настройка маршрутизации
- Cloudflare DNS - Управление DNS