21:20WordPressで作成されたWebサイトの保守管理を任せられたときの話し。サーバーはさくらレンタルサーバであった。15.5でログインページを表示したところ、下図のようにまるでCSSが効いていないかのような崩れ方をしたログインページが表示された。ログイン画面の表示崩れどうしたことかとSafariの開発者ツールを開くと、一部のリソースが403エラーで届いていないことが判明。403は“権限なし”つまりWordPressかサーバーかにブロックされている可能性があることがわかった。見るとリソースが来ていないものはすべて/wp-admin/配下のファイルであることが判った。セキュリティ系のプラグインか何かでブロックされてしまったのかと思い、FirefoxやChromeで同URL(ログインページ)を開くと正常に表示されるではないか。Safariだけ...。別ブラウザでは403エラーも無く、何事もないかのように管理画面へログイン出来た。Safariで表示されたログインページは表示こそ崩れているがログインフォームはあるのでそのままログインを試みた。すると、nginxから403エラーが飛んできて、管理画面ページの閲覧は出来ず。そのままログインを試みると403エラーこうなるとログアウトするにも開発者ツールからCookieを削除するしか方法は無い。開発者ツールの「ストレージ」タブからCookiesを選択し、表示されるすべてのクッキーを削除。ログインページのURLへアクセスすると先程の表示崩れしたページが表示された。わたしはここでFTP/S経由でファイルを見に行ったり、.htaccess設定を調べたり、さくらレンタルサーバのサーバーコントロールパネルでアクセス許可がホワイトリスト形式になっていないかなど調べた。それらしい原因は見当たらず、途方に暮れた時間がここにはあったことだけは記す。遠回りしてこそ発見があるのだ!Safariだけ弾かれるということはSafariの設定に原因がありそう、ということでSafari環境設定を見ていく。「プライバシー」タブの「IPアドレスを非公開」という設定項目が引っかかった。これが「トラッカーおよびWebサイトに非公開」に設定されていたのだ。なんだかiCloudプライベートリレーが発表された後に設定した記憶がある...。今まで気づけなかったのか。盲点!IPアドレスを非公開にするオプションこの設定を「トラッカーおよびWebサイトに非公開」から「トラッカーにのみ非公開」へ変更した。IP非公開先を「トラッカーのみ」へ変更そうして更新をかけたところ、WordPressサイトのログイン画面が正常に読み込まれた!403エラーもなし。ログインすると管理画面もきちんと表示され、種々の保守管理も行えた。正常に読み込まれたWordPressサイトログイン画面なぜ今まで気づかなかったのか(二度目!)。さくらレンタルサーバの「サーバーコントロールパネル」へログインし、セキュリティ設定のページを見てなんとなく納得。「国外IPアドレスフィルタ」の「アクセス制限設定」が“有効(制限する)”になっていることを確認して、それは確信へと変わった。さくらレンタルサーバの国外IPアドレスフィルタリング設定iCloudプライベートリレーは現在ベータ版。「トラッカーにのみ非公開」設定ならば特に問題ないが、“Webサイトにも非公開”の設定にすることでこのiCloudプライベートリレーを経由するようになる。結果、さくらサーバはわたしのアクセスIPアドレスを国外のものと認識してしまったのだろう。(ベータ版)」という項目にあるオプションボタンをクリックするとポップアップ画面が表示されるのだが、そこにはきちんと「ベータ版だからサイトに依っては問題が発生するかもよ。おまいさんのアクセスが別の地域と勘違いされたり(斯々然々)...」と書かれている。今回はプライベートリレーベータ版が原因と断定したもちろん、グローバルIPアドレスが静的であれば、さくらレンタルサーバは「国外IPアドレスフィルタ」のホワイトリストへ自IPアドレスを登録すれば問題を回避出来る。今回は作業範囲が小さかったためサーバーの余計な設定変更はせず、Safariの「IPアドレスを非公開」設定を都度いじることで対応した。セキュリティ系プラグインが変にブロックしているのでは?とか、.htaccessに変な記述があるのでは?など、別の要因を難しく考えてしまいFTP/S経由でファイルを覗いて調べたりもしたが、結局はブラウザ、もといOSに搭載されたベータ版機能の問題だった。別ブラウザで開いて正常だった時に「おや?」と思ったあの気持ちをもっと大切にすれば良かった。いうケースならば直感を信ずるも良しだ。常に柔軟であれ!さぁ、悩みのタネは解決した。