Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【ITニュース解説】Cómo solucionar el error “Enable JavaScript and cookies to continue”

2026年09月17日に「Dev.to」が公開したITニュース「Cómo solucionar el error “Enable JavaScript and cookies to continue”」について初心者にもわかりやすく解説しています。

作成日: 更新日:

ITニュース概要

「Enable JavaScript and cookies to continue」エラーは、CloudflareがセキュリティのためJS無効やCookieブロックを検知し表示する。一般ユーザーはブラウザでJSとCookieを有効にし、拡張機能を無効にする。開発者は自動化ツールで専用の回避策を使い、サイト管理者はサーバー設定を見直すと解決する。

ITニュース解説

「Enable JavaScript and cookies to continue」というエラーメッセージは、ウェブサイトにアクセスしようとしたときに表示されることがある。このメッセージは、Cloudflareというインターネットサービスが、ユーザーのブラウザがウェブサイトにアクセスするための最低限のセキュリティ要件を満たしていないと判断した場合に発生する。Cloudflareは多くのウェブサイトで使われており、ウェブサイトのセキュリティを高めたり、表示を高速化したりする役割を担っている。悪意のあるアクセスやボット攻撃からウェブサイトを守るための「セキュリティプロキシ」のような存在だと考えるとわかりやすい。

Cloudflareがこのようなエラーメッセージを出すのは、主にユーザーのブラウザでJavaScriptが有効になっていないか、Cookieがブロックされているためだ。JavaScriptは、ウェブページに動きやインタラクティブな機能を追加するためのプログラミング言語で、多くのウェブサイトで利用されている。例えば、メニューの開閉、フォームの入力チェック、画像のギャラリー表示など、私たちが普段ウェブサイトで目にする動的な要素のほとんどはJavaScriptによって実現されている。Cloudflareは、ブラウザがJavaScriptを正しく実行できるか、いわゆる「ブラウザの完全性チェック」を行うことで、アクセスしているのが人間なのか、それとも悪意のあるボットなのかを判別しているのだ。

一方、Cookieは、ウェブサイトがユーザーのブラウザに保存する小さな情報ファイルのことだ。これによって、ユーザーのログイン状態を維持したり、ショッピングカートの中身を記憶したり、ウェブサイトの訪問履歴に基づいてパーソナライズされたコンテンツを表示したりできる。Cloudflareも、セキュリティチェックやトラッキングのためにCookieを利用することがあるため、Cookieがブロックされていると、正しくサイトにアクセスできない場合がある。

このエラーは、次のような場合に発生しやすい。ブラウザの設定でJavaScriptが無効になっている場合。プライバシー設定、広告ブロック拡張機能(uBlock Originなど)、またはシークレットモード(プライベートブラウジング)が原因でCookieがブロックされている場合。ウェブブラウザではなく、自動化スクリプトやプログラム(Pythonのrequestsライブラリなど)でサイトにアクセスしようとしており、JavaScriptの実行やCookieの保存に対応していない場合。サイトのサーバー設定に問題があり、Cloudflareからのセキュリティ検証が正しく行われない場合。そして、ウェブスクレイピングなどの自動化ツール(SeleniumやPuppeteerなど)を使っている場合に、Cloudflareのセキュリティチェックを突破できない場合だ。

もしあなたが一般的なウェブサイトの利用者であれば、このエラーは比較的簡単に解決できることが多い。まず、ブラウザの設定でJavaScriptを有効にする必要がある。Google Chromeであれば「設定」から「プライバシーとセキュリティ」→「サイトの設定」→「JavaScript」の項目で有効に設定できる。Firefoxの場合は「設定」から「プライバシーとセキュリティ」→「許可設定」にある「JavaScriptを有効にする」の項目で設定を変更する。次に、Cookieの設定を確認し、サードパーティCookie(訪問しているサイト以外のドメインから送信されるCookie)を許可する必要がある。特にCloudflare.comからのCookieがブロックされていないか確認すると良い。また、広告ブロッカーやプライバシー保護のためのブラウザ拡張機能が原因で、JavaScriptの実行やCookieの保存が妨げられている可能性もあるため、一時的にこれらの拡張機能を無効にして、ウェブサイトに再度アクセスを試みることも有効だ。これらの設定変更後には、ブラウザを再起動してからもう一度試すことが推奨される。

システムエンジニアを目指す皆さんにとって、自動化ツールを使ったウェブスクレイピングやテストでこのエラーに遭遇することはよくある。Cloudflareは悪意のあるボットだけでなく、正当な自動化スクリプトであっても、通常の人間によるアクセスとは異なる挙動を検出するとブロックすることがあるためだ。標準的なHTTPリクエストを送るだけのツール(Pythonのrequestsライブラリなど)では、ウェブページに埋め込まれたJavaScriptを実行できないため、Cloudflareのセキュリティチェックを突破することは非常に難しい。このため、実際のブラウザを模倣し、JavaScriptの実行やCookieの管理が可能な自動化ツールを使用する必要がある。

JavaScriptを実行できるブラウザ自動化ライブラリの一つに「Puppeteer」がある。これはGoogle Chrome(またはChromium)をプログラムで操作するためのツールだ。しかし、Puppeteerをそのまま使っても、Cloudflareはそれが自動化されたアクセスであることを検知してブロックすることが多い。そこで、「puppeteer-extra」という拡張機能と、そのプラグインである「stealth-plugin」を組み合わせるのが一般的な解決策だ。stealth-pluginは、Puppeteerで動くブラウザが「自動化されていること」を示す痕跡を隠蔽し、まるで人間が操作しているかのように見せかけることで、Cloudflareのようなセキュリティシステムの検出を回避するのに役立つ。具体的には、puppeteer-extrastealth-pluginをインストールし、それらを使ってブラウザを起動する。そして、指定のウェブサイトにアクセスした後、Cloudflareのチャレンジページが表示された場合に、それが自動的に解決されるのを待つ処理を追加する。これにより、ページが完全に読み込まれ、スクレイピング可能な状態になるまで待機できる。ただし、Cloudflareのセキュリティ対策は常に更新されるため、stealth-pluginも常に最新版を使用することが重要だ。

Python環境で自動化を行う場合は、「Playwright」も非常に強力な選択肢だ。Playwrightは、Chromium、Firefox、WebKitといった主要なブラウザを一つのAPIで操作できるライブラリで、Puppeteerと同様にJavaScriptの実行やCookieの管理が可能だ。playwright install chromiumコマンドで必要なブラウザエンジンをインストールした後、playwrightのAPIを使ってブラウザを起動し、指定のURLにアクセスする。そして、Cloudflareのチャレンジページが消滅し、目的のコンテンツが表示されるまで待機する処理を記述することで、セキュリティチェックを回避できる。

もしあなたがウェブサイトの管理者で、自身のサイトでユーザーがこのエラーに遭遇している場合、サーバー側の設定やCloudflare自体の設定を見直す必要がある。サイトのサーバーが、Cloudflareから送信される特定のHTTPヘッダー(例えばCF-Connecting-IPCF-IPCountryなど、ユーザーのIPアドレスや国情報を示すもの)をブロックしていないか確認する。これらのヘッダーはCloudflareが正しく機能するために重要だ。また、サーバーやネットワークのファイアウォールに、CloudflareのJavaScriptチャレンジに必要な通信を妨げるルールがないか確認する。さらに、Cloudflareのダッシュボードで、一時的に「Under Attack」モード(セキュリティ強化のための設定)を無効にして、問題が解決するかどうかを試すこともできる。これは一時的な診断方法だが、問題の切り分けに役立つ。また、Cloudflareがチャレンジ用のJavaScriptファイルを配信するために使用するcdn-cgiパスのファイルが、サーバー側でアクセス可能であることも確認する必要がある。

このエラーは、Cloudflareというセキュリティサービスが、ユーザーのアクセスが人間によるものか、安全なものかを判断しようとしている結果として発生する。解決策は、あなたが「ウェブサイトの利用者」「自動化を行う開発者」「ウェブサイトの管理者」のどの立場であるかによって大きく異なる。特に、自動化を行うシステムエンジニアを目指す人にとっては、単純なHTTPリクエストライブラリではCloudflareのような強力なセキュリティを持つサイトに対応できないことを理解することが重要だ。このような場合は、PlaywrightやPuppeteer(stealth-pluginと組み合わせる)のような、実際のブラウザを模倣するツールを使う必要がある。あるいは、ScraperAPIやBright Data、Zenscrapeといった専門のウェブスクレイピングサービスを利用する選択肢もある。これらのサービスは、Cloudflareのチャレンジを自動的に解決する機能を提供しており、開発者がセキュリティ対策を自身で実装する手間を省くことができる。

問題の原因がクライアント(ブラウザや自動化スクリプト)側にあるのか、それともサーバー側にあるのかを切り分ける良い方法は、シークレットモード(プライベートブラウジング)でウェブサイトにアクセスしてみることだ。シークレットモードでは、通常、ブラウザ拡張機能が無効になり、新しいクリーンなセッションが開始されるため、ここで問題なくアクセスできれば、元のブラウザの拡張機能や設定に原因がある可能性が高い。もしシークレットモードでも問題が解決しない場合は、サーバー側の設定やネットワーク環境に問題がある可能性を疑うべきだ。いずれにしても、JavaScriptの実行とCookieの許可は、現代のウェブサイトへのアクセスにおいて基本的な要件であり、Cloudflareのようなセキュリティシステムが存在する限り、このエラーを解決するためには、これらの要件を満たすことが不可欠である。

関連コンテンツ

関連IT用語

関連ITニュース