
最近macOS Catalina上のSafari 13(最新バージョン)を使用しているとTwitterや一部のWebサイトから頻繁にログアウトされ、その度にログインし直すという現象が起きた。

Safari以外のブラウザでは問題が起きないことから、これはmacOS Catalina、あるいは現行Safariでのバグであると思われる。
なお、稀にこちら側の問題ではなくWebサイトなどのサーバー側に原因が存在する場合もある。
ここでは長期間に渡り問題が継続しWebサイト側の原因ではないと思われる場合の対処法を紹介する。
INDEX
Safariログアウト問題の対処法
ログイン情報を保存する設定をしているか確認

対処法の前にまずWebサイトや何らかのサービスにログインする際にログイン情報を保存しているかどうかを確認しよう。
Twitterであれば「ログイン」の横に「保存する」というチェックボックスがあり、Twitterに限らず多くのWebサイトでも文言は異なるが同様のチェックボックスが存在する。
このチェックボックスにチェックしないとログイン情報が保存されず一定時間後にログアウトされてしまうため、念のためログアウト問題が頻繁に起きるWebサイトやサービスで一旦ログアウトし、ログイン情報の保存が有効になっているか確認しておこう。
問題の起きるWebサイト・サービスで広告ブロッカーを無効にする

もしSafariで広告ブロッカー(コンテンツブロッカー)を使用しているなら、その広告ブロッカーがWebサイトのCookieをブロックしている可能性があるので問題の起きるWebサイトでは広告ブロッカーを無効にしてみよう。

まず広告ブロッカーには大抵の場合、ホワイトリスト機能があるので問題が起きるWebサイトをホワイトリストに追加する。
例えば1Blockerであればツールバーの1Blockerのアイコンをクリックして「Whitelist」をクリックし「Turn off Blocking for This Site」をオンにする。

AdGuardの場合はツールバーのアイコンをクリックして「本ウェブサイトで有効にする」のチェックを外す。
この設定は広告ブロッカーによって変わってくるため、自分の使用している広告ブロッカーの設定をチェックしてみよう。

更に念のためSafariの「環境設定」の「Webサイト」のタブの左パネルから「コンテンツブロッカー」を選び、問題の起きるWebサイト(上記画像ではTwitter)でコンテンツブロッカーをオフにしよう。
サイト越えトラッキング防止機能をオフにする

Safariには「サイト越えトラッキングを防ぐ」という機能がデフォルトで有効になっているが、この設定も広告ブロッカーと同じくCookieに問題を起こす例が非常に多い。
Safariの「環境設定」から「プライバシー」タブに移動し「サイト越えトラッキングを防ぐ」をオフにしてみよう。
また、その下にある「すべてのCookieをブロック」がオフになっていることも確認しておこう。
この設定が今のところ僕には最も効果があった方法で、今のところ頻繁にTwitterなどからログアウトされる現象は起きていない。
Webサイトデータを削除する

特定のWebサイトから頻繁にログアウトされる場合、そのWebサイトでのCookieやその他の情報(キャッシュなど)に異常が発生している可能性があるのでWebサイトデータを削除してみよう。
特定のWebサイトデータを消すにはSafariの「環境設定」から「プライバシー」タブに移動し「Webサイトデータを管理」をクリックする。

上記画像のようなウィンドウが出るので問題が出ているWebサイト(画像ではtwitter.com)を選択し、「削除」をクリックしよう。
この操作により、そのWebサイトのログイン情報やキャッシュなど諸々のデータは全て消えるが問題が改善する場合がある。
プライベートモードは使わない

Safariにはプライベートモード(プライベートウィンドウ)というものがあり、このモードでブラウジングをしている際は履歴にも訪問したWebサイトは記録されず、Cookieも保存されないため、もしプライベートモードでSafariを使用しているならプライベートモードを使うのはやめてみよう。
それでも解決しない場合

上記の方法のいずれを試しても改善しない場合、Safari Technology Previewというデベロッパー向けのSafariを使用する方法もある。
Safari(特にSafari 13)ではバグがあり、海外のコミュニティサイト「Reddit」ではこの問題はSafari特有の物であり、「Safari Technology Preview」を使用しない限り完全には防げないという投稿があった。
Safari Technology Previewは僕も一時期使っていたが確かに頻繁にWebサイトからログアウトされるという問題は発生しなかった。
また、Safari Technology Previewは既存のSafariを上書きするのではなく新たにSafari Technology Previewを単独でインストールする形になるため、既存のSafariやmacOSに与える影響も少ない。
ただしデベロッパー向けの主に上級者が使用するバージョンであるため不具合が起こっても自己責任となる。

Safari Technology PreviewはmacOS Mojave版とmacOS Catalina版がそれぞれ公開されているので自分の使用しているmacOSに合わせてダウンロードしてインストールしよう。
まとめ
Safariは13になって、更にmacOS Catalinaと組み合わせて使用すると不具合やバグなどの現象がかなり顕著になるように思う。
もし現在Safari 12を使用しておりmacOS Catalinaにもアップデートしていないのなら、予期せぬ不具合を避けるためにもSafari 13へやmacOS Catalinaへのアップデートは控えてもいいだろう。