======CloudFlareをWordPressサイトに使う====== WordPressを使っているサイトに、CloudFlareを適用してハマったので、その解決のメモ。 ====ERR_TOO_MANY_REDIRECTS発生==== DNSを変更し、CloudFlare経由でサイトを表示しようとすると、ブラウザが ERR_TOO_MANY_REDIRECTS というエラーを出すようになった。\\ (ちなみにこのエラーコードはFireFox系のブラウザでは表示されず、Chrome系のブラウザでお目にかかれる)\\ ここでCookieを削除しろと表示されるが、削除しても効果はなかった。 ====HTTP->HTTPS転送の問題っぽいが==== CloudFlareのトラブルシュートのページ([[https://developers.cloudflare.com/ssl/troubleshooting/too-many-redirects/|ERR_TOO_MANY_REDIRECTS]])は、HTTP->HTTPSの自動転送がよろしくないとあったので、.htaccessでRewriteRuleを記述していたのを削除したら表示されるようになった。\\ ・・・が、これが罠だったのである。 サイトのページは表示されるのだが、管理ページにアクセスできない。上記のトラブルシュートは「ともかくRedirectが無限ループになる問題だよ」という主旨なので、RewriteRuleをひたすら点検することに時間を費やした。 ====管理ページ特有の問題なのか?==== こういうページも見つけた - [[https://beadored.com/cloudflare-introduction-important-point/|CloudFlare を導入する際の注意点のメモ]]\\ * 「国外 IP アクセス制限」を無効にする * SiteGuard WP Plugin の「管理ページアクセス制限」を解除する * XML-RPC にアクセス制限をかけている場合は解除する -- これは明らかに関係ねーな 管理ページに関することなので、有効な手段化と思ったが・・・関係なかった。 ====実はCloudFlareの設定の問題だった==== しかたないので、.htaccess の RewriteRuleを全部OFFにしてみた。レンタルサーバー側の転送設定もOFFになっていることを確認した。だがエラーは表示され続ける。Redirect無限ループとは違う問題なのではないか・・・。 [[https://blog.hubspot.com/website/wordpress-err-too-many-redirects|How to Fix the WordPress ERR_TOO_MANY_REDIRECTS Problem]] というページの **How to Fix Cloudflare SSL Settings** というセクションに、こういう記述がある。 >**How to Fix Cloudflare SSL Settings** >If you're using Cloudflare, you'll want to check your Cloudflare SSL settings to make sure that they aren't triggering this issue. >The most common cause here is having installed an SSL certificate on your WordPress site's server but using Cloudflare's **Flexible** setting instead of the Full setting. >The **Full** setting will make use of your newly installed SSL certificate when accessing the server. >To check this, open your Cloudflare dashboard and then go to the **SSL/TLS** settings for the site where you're experiencing issues. >If you've installed an SSL certificate on your server, Cloudflare should be configured to use either Full or Full (strict). In most cases, choosing Full is the safest option. DeepL翻訳したものを貼り付けておく。 >Cloudflare SSL設定の修正方法 >Cloudflareを使用している場合、CloudflareのSSL設定がこの問題を引き起こしていないか確認したい。 >最も一般的な原因は、WordPressサイトのサーバーにSSL証明書をインストールしたにもかかわらず、CloudflareのFull設定ではなく**Flexible**設定を使用していることです。 >**Full**設定は、サーバーにアクセスする際に新しくインストールしたSSL証明書を使用します。 >これを確認するには、Cloudflareのダッシュボードを開き、問題が発生しているサイトの**SSL/TLS**設定に進みます。 >サーバーにSSL証明書をインストールした場合、CloudflareはFullまたはFull(strict)のいずれかを使用するように設定されているはずです。ほとんどの場合、Fullを選択するのが最も安全です。 CloudFlareの設定を確認したところ、「フレキシブル」になっていた。これを「フル」に設定したところ、**無事解決した**。 今回は、HTTP->HTTPS設定や、RewriteRule、海外IPアクセス制限、SiteGuardは関係なかった。