ウェブサイトで Content Security Policy(CSP) ↗ ヘッダーを使っている場合は、Turnstile のスクリプトと iframe を許可するように設定する必要があります。正しい CSP ディレクティブがないと、Turnstile が読み込まれないことがあります。
Cloudflare では、CSP3 ↗ で説明されている nonce ベースの方法を推奨します。nonce を api.js の script タグに含めると、Turnstile が動的に読み込むリソースへ伝播します。Turnstile は strict-dynamic ↗ に対応しています。
別の方法として、CSP ヘッダーに次の値を追加します。
- script-src:
https://challenges.cloudflare.com - frame-src:
https://challenges.cloudflare.com
CSP は Google の CSP Evaluator ↗ で検証することを推奨します。
Turnstile を Pre-clearance モードで使う 場合、Turnstile はドメインの /cdn-cgi/ にある専用エンドポイントへ fetch リクエストを送り、cf_clearance Cookie を設定します。
このリクエストを成功させるには、connect-src ディレクティブに 'self' を含める必要があります。