WordPressサイトを見に来た読者が「表示が遅いな」と感じて離脱してしまう問題や、アクセスが集中してサーバーの負荷が跳ね上がりダウンを心配する問題に悩まされていませんか。サーバープランを上位へアップグレードすることを検討する前に、まず取り組むべき最も費用対効果が高く確実な解決策が「Cloudflare(クラウドフレア)」の導入です。
Cloudflareは単なるCDN(コンテンツ配信ネットワーク)ではありません。無料のプランであっても、世界規模のエッジネットワーク、強力なWAF(Webアプリケーションファイアウォール)、最新のSSL/TLSによる暗号化、そして細かなCache Rules(キャッシュルール)の制御といった、WordPressを爆速かつ安全に運用するためのエンタープライズ級の機能が開放されています。
しかし、いざCloudflareを導入・設定しようとすると、「ネームサーバーの切り替えで間違えてサイトが止まらないか不安」「設定後にリダイレクトループ(ERR_TOO_MANY_REDIRECTS)が起きてサイトが見られなくなった」「管理画面にまでキャッシュが効いてしまい記事が更新できない」といった壁にぶつかり、導入を断念してしまうケースが少なくありません。
本記事では、実務環境で利用されている設定値やベストプラクティスをベースに、WordPressにCloudflareを導入するための完全な手順をステップ・バイ・ステップで解説します。アカウントの作成からDNSの移行、最大の効果を生むキャッシュルールとWAFの構築まで、この記事を読むだけで迷わず設定を完遂できる構成にまとめました。
CloudflareをWordPressに導入する圧倒的なメリット
具体的な設定手順に取り組む前に、なぜ多くのWordPressサイトでCloudflareが採用されているのか、その中核となる仕組みとメリットを整理しておきましょう。ここを把握しておくことで、その後の細かな設定の必要性がより深く理解できます。
エッジサーバーによる表示速度の飛躍的な向上
Cloudflareを導入すると、世界中(日本国内だけでも東京や大阪など複数拠点)に配置された「エッジサーバー」があなたのオリジナルサーバー(オリジンサーバー)の前に立ち、ウェブサイトのデータを訪問者へと代わりに配信します。画像データやCSS、JavaScriptといった静的リソースはもちろんのこと、適切にキャッシュルールを設定すれば、本来サーバー側で都度生成されるHTMLのデータ自体もエッジサーバーから直接高速に返すことが可能になります。これにより、読者にとってはページの読み込み速度(TTFB:Time to First Byte)が劇的に短縮され、快適な閲覧体験を提供できます。
オリジンサーバーの転送量とバックエンド負荷の大幅な削減
エッジサーバーがキャッシュを返すということは、背後にあるオリジンサーバー(レンタルサーバーやVPS)へ到達するアクセス要求が激減することを意味します。WordPressの挙動の要であるPHPの実行回数やデータベース(MySQLやMariaDBなど)への発行クエリが大幅に削減されるため、サーバーのCPU・メモリ負荷が劇的に下がります。大規模なアクセス集中や突発的なバズ(いわゆる砲被害)が起きても、サーバーダウンの危険性を強力に回避できるのです。
無料で利用できる強固なセキュリティとWAF
WordPressはその圧倒的な普及率ゆえに、世界中からボット経由でのブルートフォース攻撃や、プラグインの既知の脆弱性を狙った攻撃の標的になりやすいという宿命を持っています。Cloudflareをクラウド上の防御壁として仲介させることで、悪意のあるアクセスや膨大なトラフィックを伴うDDoS攻撃の大半をエッジサーバーの段階でブロックし、真のユーザーの健全なアクセスだけをオリジンサーバーへ到達させることができます。
Step 1. Cloudflareアカウントの作成とドメイン登録
それでは、実際の設定手順に進んでいきましょう。最初のステップは、Cloudflareへのサインアップと、管理・保護したい対象ドメインの登録作業です。
Cloudflareアカウントの作成手順
まずはCloudflareの公式サイトにアクセスし、アカウントを新規作成します。個別のメールアドレスとパスワードを設定するか、手元の「Googleアカウント」を利用した連携サインアップも可能です。登録完了後に入力したメールアドレス宛に確認用のメールが届きますので、本文内のリンクをクリックして、アカウント自体の認証を必ず最初に済ませておいてください。
ドメインの追加と適切なプランの選択
ダッシュボードにログイン後、「サイトを追加」ボタンをクリックします。管理したいWordPress運用中のドメイン名(例: madoromi.org のように、サブドメインを含まない形式)を入力します。次の画面で課金プランを選択するように求められますが、個人ブログや通常の企業サイトであれば、まずは一番下にある「Free(無料プラン)」を選択してください。無料プランでもCDNやSSL、キャッシュルールなどの恩恵は十分に受けられます。将来的にさらに高度なWAFや専用の解析機能が必要になった段階で、Proプランへの移行を検討すれば問題ありません。
既存のDNSレコード結果を確認する
プランを選択すると、Cloudflareが現在のドメインのDNS設定をスキャンして自動で取り込みます。スキャン終了後、AレコードやCNAMEレコード、MXレコードなどの一覧が表示されます。 この段階で表示されたIPアドレスが、現在利用しているサーバーのものと紐付いているか必ず確認してください。また、WordPress運用ドメインに対する「プロキシステータス(雲のアイコン)」がオレンジ色(プロキシ済み)になっていることを確認します。ここがグレー(DNSのみ)のままだとCloudflareのCDNやWAF機能が働かないため、必ずクリックしてオレンジ色を点灯させてください。万が一の切り戻しに備え、現在設定されているレコードの一覧を事前にスクリーンショット等でバックアップしておくことを強くおすすめします。
Step 2. ネームサーバーを切り替える(DNS移行)
DNSレコードの確認と修正が終わると、Cloudflare導入における最大の関門である「ネームサーバーの変更」手順に入ります。これにより、あなたのドメインに対する世界からのすべてのアクセスが、一度Cloudflareを経由するようになります。
ドメイン管理画面でネームサーバーをCloudflareに変更
Cloudflareの画面上に「 Cloudflare のネームサーバー(例: anna.ns.cloudflare.com と bob.ns.cloudflare.com)」が2つ表示されます。これらをコピーして手元に控えてください。 次に、ドメイン自体を取得・管理しているサービス(お名前.com、エックスドメイン、ムームードメインなど)の管理コンソールにログインします。該当ドメインの「ネームサーバー設定」画面を開き、現在設定されている利用中サーバー固有のネームサーバー情報を削除して、先ほどコピーしたCloudflareのネームサーバー2つに置き換えて保存します。
変更の反映待ちとステータス検証
ネームサーバー情報の変更がインターネットの各プロバイダに浸透(プロパゲーション)するまでには、早ければ数十分、環境によっては数時間から最大48時間程度かかる場合があります。Cloudflareのダッシュボードに戻り「ネームサーバーを確認する」というボタンを押し、対象ドメインのステータスが「保留」から「アクティブ」に変わるのを待ちます。切り替えの待ち時間の間にサイトが落ちる(ダウンタイムが発生する)ことは基本的にありませんが、正しく切り替わったかどうか、ブラウザのシークレットモードなどを活用して表示検証をしておくことをおすすめします。
Step 3. WordPress向けのSSL/TLS設定の最適化
サイトのステータスがアクティブ設定に変わったら、通信を正しく暗号化するためのSSL/TLS設定を見直します。WordPressへのCloudflare導入時、もっともミスが生まれやすく、「リダイレクトループ」を引き起こす原因の大半がここにあります。
暗号化モードは「フル」または「フル(厳密)」を選択
Cloudflareのダッシュボード左側メニューから「SSL/TLS」を開きます。「暗号化モード」としていくつかの選択肢が表示されていますが、オリジンサーバー側で既に「https://」による通信が可能な状態になっている場合、以下のルールで選択してください。 ・「フル」:オリジンサーバー側で独自発行した「自己署名証明書」などを利用している場合。 ・「フル(厳密)」:オリジンサーバー側で「Let’s Encrypt」などの公的なSSL証明書、またはCloudflareが発行する「オリジン証明書」を導入している場合。実務環境ではLet’s Encryptが動いていることが多いため、「フル(厳密)」を選択するのが最もセキュアなベストプラクティスです。 もしここで安易に「フレキシブル」を選択すると、Cloudflareからオリジンサーバーへの通信が非暗号化(HTTP)となります。WordPress側はHTTPSでのアクセスを求めてリダイレクト処理を実行するため、「HTTP→HTTPS」の指示が延々と応酬される無限ループ(ERR_TOO_MANY_REDIRECTSエラー)が発生し、サイトが閲覧不能になります。
【重要】運用を楽にするCloudflareオリジン証明書の導入
実務環境で「Let’s Encrypt」を利用している場合は、今後の運用に注意が必要です。Cloudflareのプロキシ機能(オレンジ色の雲)を有効にした状態のままだと、Let’s Encryptが3ヶ月ごとに行う自動更新(ドメイン認証手続き)の通信がCloudflare側で弾かれてしまい、高い確率で更新作業が失敗(エラー)に終わります。 これを防ぐための最も確実で運用コストの低い解決策が、Cloudflareのダッシュボードから無料発行できる「オリジン証明書」をサーバー側にインストールすることです。この証明書は有効期限を最長「15年間」に設定できるため、一度導入してしまえば定期的な証明書更新という煩わしい手間から長期間解放されます。
常にHTTPSを使用の有効化
続いて同メニュー内の「エッジ証明書」タブを開き、「常にHTTPSを使用(Always Use HTTPS)」のトグルをオンにします。これにより、読者が誤って昔の http:// のURL形式でアクセスしてきた場合でも、Cloudflare側で自動的に安全な暗号化通信の https:// ヘ強制リダイレクトしてくれます。
Step 4. 最新のキャッシュルール(Cache Rules)ベストプラクティス
Cloudflareの最大の真価を引き出すのが、キャッシュの柔軟な制御です。以前はPage Rules(ページルール)という機能を用いて設定をしていましたが、現在はより複雑な条件判定が高度に可能な「Cache Rules(キャッシュルール)」を使用することが推奨されています。
Page RulesとCache Rulesの違いとは
従来のPage Rulesは、URLのワイルドカードを使ったシンプルなパターンマッチングに基づく機能でしたが、無料プランでは設定できるルール上限数が「3つままで」という極めて厳しい制約がありました。新しいCache Rulesでは、単なるURLパターンだけでなく、Cookieデータの有無、HTTPリクエストヘッダーの情報、クエリパラメータなど、複雑な条件を自由に組み合わせてキャッシュの動作をコントロールできます。ルール数の上限もより多く(無料プランでも10件利用可能)設けられており、WordPressの特性に合わせたきめ細かく実用的なキャッシュ運用が可能になりました。
管理機能やログインユーザーを除外するバイパスルールの作成
真っ先に設定すべき最重要のルールです。 WordPressのフロント(表側)のページは積極的にキャッシュさせたい反面、管理画面(ダッシュボード)やログイン済みのユーザーに対してキャッシュを適用してしまうと、自分が行った記事の更新内容が見えなくなったり、管理機能が正常に動かなくなったりする重大な不具合を引き起こします。そのため、キャッシュを意図的に「素通り(バイパス)」させるための条件ルールが必須となります。 左側メニューの「キャッシュ」配下にある「Cache Rules」を開き、「ルールを作成」ボタンから以下の内容で最優先のルールを一つ作成します。
- ルール名: Bypass WP Admin and Logged in
- 条件式: 「カスタムルール式を編集」で以下を設定
- (ANDまたはORを活用して複数指定)
- ・フィールド「URIパス」 / 演算子「次を含む」 / 値「wp-admin」
- ・(OR)フィールド「URIパス」 / 演算子「次を含む」 / 値「wp-login.php」
- ・(OR)フィールド「Cookie」 / 演算子「次を含む」 / 値「wordpress_logged_in」
- キャッシュステータス: バイパス(Bypass)を選択
このルールにより、WordPressの管理システム本体のディレクトリや、ログイン状態を管理する特定のCookieを持っているユーザーに対しては一切のキャッシュが適用されなくなり、安全に裏側の管理機能を利用できるようになります。
動的なHTMLページ自体を強力にキャッシュするルールの作成
除外ルールを確実に設定したうえで、今度は一般の読者が閲覧するフロントエンドのページ全体をキャッシュさせるルールを作成します。上記のバイパスルールの『下側』に配置されるように、新しいルールを追加します。
- ルール名: Cache WP Frontend Everything
- フィールド「URIパス」 / 演算子「次を含む」 / 値「/」
- キャッシュステータス: 適用(Eligible for cache)を選択
- エッジTTL: カスタムを選択し、自動または任意の期間(例: 数時間時間〜1週間程度)を設定
- ブラウザTTL: 既存のヘッダーを尊重(または数時間程度)
この設定により、本来であればWordPressのPHPがデータベースとやり取りして処理・生成する動的なHTMLの出力結果も、画像などの静的ファイルと同様にCloudflareのエッジサーバーに長期間キャッシュされます。これが極めて強力な威力を発揮し、驚異的なレスポンス速度と圧倒的なサーバー負荷の軽減をもたらします。必ずルールの順番に注意し、Cloudflareの画面リロード後も上から順に「1.バイパスルール」→「2.全体キャッシュルール」の階層になるように配置優先度を守ってください。
Step 5. WAFとセキュリティルールの推奨設定
Cloudflareのもう一つの強みであるセキュリティ機能も最適化しておきましょう。「セキュリティ」メニューから「WAF(Web Application Firewall)」を開き、自分専用のカスタムルールを作成することで、WordPress特有の面倒な攻撃を未然に防ぎ、劇的に減少させることができます。
xmlrpc.phpへの不要なアクセスを遮断するルール
WordPressのシステムファイルの一つである `xmlrpc.php` は、外部アプリ連携やピンバック等に使われますが、現在ではボットによるひたすらパスワードを試すブルートフォース攻撃や、DDoS攻撃の踏み台として集中的に狙われやすい弱点の温床となっています。スマートフォンアプリ(WordPress公式アプリなど)からの遠隔投稿やJetpackプラグインを使用していないのであれば、WAFの段階で完全にアクセスをブロックしておく手順が強く推奨されます。
- ルール名: Block XMLRPC
- フィールド「URIパス」 / 演算子「次と等しい」 / 値「/xmlrpc.php」
- アクション: ブロック(Block)
海外からの管理画面アクセスに制限チャレンジを課す
あなたが日本国内のご自身の環境からのみWordPressの記事更新をはじめとする管理業務を行うのであれば、海外(国外)のIPアドレスから `wp-admin` の管理パスへのダイレクトな通信に制限をかけることで、乗っ取りの危険性を非常に高い確率で低下させられます。 アクセス元国(Country)が日本「以外」であり、かつURIパスが `/wp-admin` を含むというAND条件のルールに対して、「マネージドチャレンジ(Turnstileを用いたブラウザでの機械的ではない人間であることの確認手続き)」を実行するアクションを設定すると、正規の利便性を損なわずに強固なセキュリティ保護の防壁として機能します。
Step 6. Cloudflare公式プラグインとの連携
ここまででCloudflare側のダッシュボード設定が完了しました。最後の仕上げとして、WordPressの管理画面側で公式の「Cloudflareプラグイン」をインストールし、APIを使った連携を済ませておきましょう。
APIキーの設定とデフォルト最適化の適用
WordPressの「プラグイン > 新規追加」画面で「Cloudflare」と検索してインストール・有効化します。プラグインの設定画面に入り、Cloudflareの右上のアカウントアイコンから「マイ プロフィール > APIトークン」で取得・確認できる「グローバルAPIキー(Global API Key)」と、登録メールアドレスを入力してサインインします。ログイン後、画面内にある「Apply Default Settings(デフォルト設定を適用)」ボタンをクリックするだけで、WordPress運用に向けた細かいベース設定がCloudflare側に自動的かつ正確に反映されます。
記事更新時の自動キャッシュパージ機能(クリア)
この公式プラグインをあえて導入する最大の理由でありメリットは、新しい記事を執筆して公開した際や、既存の記事をリライト保存した際に、Cloudflareの該当エッジサーバー上に残っている「古いキャッシュ」を自動的に削除(パージ)してくれる連携機能にあります。これにより、「真新しい追加情報を記事に書いたのに、キャッシュが強固すぎて読者には過去の情報が表示され続けてしまう」というキャッシュ運用につきものの手痛い事故を未然に防ぎ、常に最新のコンテンツを配信できるようになります。
さらなる高みを目指すならAPOの導入を検討
無料のキャッシュ制御機能だけでも十分すぎるほどの速度の改善が見込めますが、さらに一段上の卓越したパフォーマンスを目指したい方は「Automatic Platform Optimization(APO)」という有料オプション(月額5ドル)の導入を検討してみてください。APOは、WordPressというシステム専用に独自に調整されたロジックでTTFBを全自動で極小化し、Webフォントの読み込み改善などを一手に引き受けてくれるため、手動のルールを細かく書くことなく爆速環境を実現できます。
Cloudflare導入時によくあるトラブルと対処法
設定を順調に完了したつもりでも、途中でページが真っ白になったり、レイアウトが激しく崩れたりと、予期せぬエラー表示に出くわすことがあります。ここでは解決依頼が非常に多く寄せられる代表的な2つのトラブルの解決手法について触れておきます。
ERR_TOO_MANY_REDIRECTS(リダイレクトループ)
ブラウザに「リダイレクトが多すぎます」という文言が表示されてサイト全体が閲覧不可になるエラーです。本記事の Step 3 でも指摘した通り、これはSSL設定が原因である確率が極めて高いです。CloudflareのSSL/TLS設定画面に戻り、暗号化モードの設定を「フレキシブル」から「フル」または「フル(厳密)」に変更しなおすことで、すぐに正常な状態へ復旧します。
デザイン崩れを引き起こすMixed Content(混在コンテンツ)
ページ自体は表示されるものの、CSSファイルがまったく適用されず文字だらけの崩れた画面になったり、画像のリンク切れが多数発生したりする場合は、HTTPSで保護されたページ内にHTTP(非暗号化)の古いURL形式が混じってブラウザ側でセキュリティブロックされている「Mixed Content」の状態に陥っています。 CloudflareのSSL/TLS設定内にある「エッジ証明書」タブを開き、「常にHTTPSを使用(Always Use HTTPS)」と「Automatic HTTPS Rewrites(自動HTTPSリライト)」のトグルをどちらもオンにすることで、これらのリンクをCloudflareのエッジ側が自動で判別して強制的に安全な形へ修正してくれます。
よくある質問(FAQ)
Cloudflareはどこまでの機能が無料で使えますか?
通常の中小規模の個人ブログや中小企業のウェブサイトを運用する上での必須機能(CDN、無料SSL証明書の発行、DDoS保護、十分な数のCache RulesやカスタムWAFルール)はすべて永年無料で利用可能です。有料プランは、独自の高度な画像ファイル自体の最適化機能や詳細なアクセス解析データ、より強力なビジネス向けサポートを求めるフェーズに入ってからアップグレードを検討すれば十分お釣りが来ます。
画面デザインを微調整したのに反映されません。キャッシュの削除方法は?
テーマのCSSファイルやロゴ画像の差し替えを行ったのにブラウザに新しい変更が反映されない場合は、Cloudflareのエッジネットワークに古いデータが強力に保持されている状態です。WordPressの管理画面からインストールした公式プラグインにある「Purge Cache(キャッシュを消去)」から「Purge Everything」を手動で押すか、Cloudflare本体のダッシュボード右上にある「キャッシュをパージ」→「すべてパージ」をクリックすることで、数秒以内に強制的に全世界の手元にあるキャッシュデータがクリアされ、オリジンの最新の表示に戻ります。
まとめ
CloudflareとWordPressの組み合わせは、大量のアクセス要求をさばきダウンを防ぎ、セキュリティの脅威に対抗し、そしてサイトの表示スピードを限界まで向上させるための現環境下での「最適解」といえます。あらためて設定の流れの要点をおさらいします。
- Cloudflareアカウントを作成し、指定通りにネームサーバーを移行する
- 無限リダイレクトを防ぐため、SSLの暗号化モードを「フル」または「フル(厳密)」にする
- Cache Rulesを用いて、ログインユーザーを除外したうえでHTMLそのものをキャッシュする
- WAF機能を活用して脆弱な「xmlrpc.php」をブロックし事前防御の土台を固める
- 公式プラグインを導入し、記事更新に伴うキャッシュパージを全自動化する
これらのステップを順番に確実に行うことで、本来であれば非常に高額な上位サーバープランを契約しなければ維持できないような強固で爆速なサーバーインフラを、手軽に手に入れることができます。初期設定作業自体は多少の学習コストを伴いますが、設定さえしっかりと完了させれば、その後の定期的な日々の運用負荷は劇的に下がります。ぜひ今回の手順をきっかけに、Cloudflareの導入へと踏み出してみてください。


Comment