2026-02-23
Cloudflare Workers のプレビュー URL を自動で無効化する
バージョン削除では消えないプレビュー環境をSubdomain APIで安全に管理する方法
プレビューURLが残るセキュリティリスク
PRマージ後もプレビュー環境が自動で削除されず誰でもアクセス可能な状態が続いてしまいます
放置されるURL
PR終了後もアクセス可能
認証機能がないためURLを知っていれば誰でも閲覧できてしまう
API削除の罠
バージョン削除は無意味
Beta APIでバージョンを消してもルーティングは残りアクセス可能
プレビューURL無効化の正解
Workersのバージョンは不変かつ追記のみの設計。削除ではなくSubdomain APIでルーティングを制御するのが正しいアプローチです
Beta APIでの削除
メタデータが消えるだけでプレビューURLへのアクセスは遮断されない
Subdomain APIの利用
previews_enabledをfalseにして全プレビューを確実にHTTP/404にする
本番環境への影響はゼロ
enabledとpreviews_enabledは独立しているため本番URLはHTTP/200のまま維持される
2つのAPI設定と対象URLの違い
Subdomain APIで制御できる2つのフラグとその影響範囲を整理します
enabledフラグ
本番環境のworkers.dev URLを制御
対象URL
設定変更の影響
previews_enabled
プレビュー用のURLを制御
対象URL
設定変更の影響
GitHub Actionsでの自動化フロー
PRデプロイ時と本番デプロイ時にAPIを叩いてプレビュー状態を自動制御します
デプロイ前
previews_enabledをtrueにしてプレビューURLを有効化する
動作確認
発行されたプレビューURLでPRの変更内容をテストする
本番デプロイ後
previews_enabledをfalseにしてプレビューURLを無効化する
安全なプレビュー運用を始めよう
不要なプレビュー環境を適切に閉じてセキュリティリスクを最小限に抑えましょう
導入のステップ
APIトークンの取得
Cloudflareダッシュボードで必要な権限を持つトークンを発行
CI/CDの改修
GitHub ActionsのワークフローにAPIリクエストを追加
ポイント: 複数PRのプレビューを同時使用する場合はCloudflare Accessの利用も検討してください
安全な開発体験を構築していこう
sui Tech Blog