Main Logo
hero-background.jpg

Nextcloud ログインがループする

Nextcloudでログインしてもログインできない現象の解決備忘録

Nextcloudでログインしてもリダイレクトされているかのように同じログイン画面が表示される現象を解決する


Nextcloud session heartbeat polling started

nextcloudでログインができず、ログイン画面のループに陥った。 ブラウザーのdevを確認したところsession heartbeat polling startedの文字が確認できた。
CDN等のキャッシュが怪しかったがサーバーログを確認したところphpのセッションフォルダーが原因だった。

環境

  • Almalinux
  • php 8.1
  • nginx

原因

サーバーを再起動させたことろこnextcloudにログインができず、ログを確認した。 nextcloudのログは、nextcloudのdataフォルダにnextcloud.logがある。その一部で次のメッセージが確認できた。

"message":"session_start(): Failed to read session data: files (path: /var/lib/php/session) at 

どうやら、phpのsessionフォルダにアクセスできないという事らしい。
該当のフォルダを確認すると確かにsessionフォルダーのオーナーとグループがapacheになっていた。

修正する

とりあえず応急処置として、セッションフォルダーのオーナーをnginxに修正した。

/var/lib/php/session
chown nginx:nginx session/ -R

根本的な解決

phpのwww.confを修正するとデフォルトのapacheからnginxに修正できるはず。 www.confを確認してみたが、apacheからnginx設定していた。原因が分からないが、~~もしかしてanaondaを入れてしまって他の設定ファイルを読んでいると推測する。~~ pythonは関係ないはず。 根本的な解決はしてないが、再起動時この設定を変えればいいのでとりあえず放置しておく。

まとめ

phpのwww.conf設定はnginxになっているが、なぜphpのsessionフォルダーがapacheになっているのかよくわからない。
nextcloudログイン画面ループは何度も遭遇しているので、備忘録として残しておく。

関連記事

コメントを読み込み中...