Powered by Cloudflare

Nextcloudでファイルが何も表示されないときの対処法【WAFだった】

サーバー

強力なself-hosted型ファイル共有ソフトであるNextcloudを愛用しています。先日ロリポップ!レンタルサーバーを契約したので、そこにも設置してみたのですが、問題が発生しました。

なんとNextcloudを開いてもファイルが何も表示されない!!でも、iPhoneアプリからは表示される!!

これの原因と解決方法をご紹介します。

原因はWAF(Web Application Firewall)だった

結論から言うと、原因はWAFでした。ロリポップ!のWAFを該当ドメインに対して無効化したところ、しばらくしてちゃんとファイルが表示されるようになりました。

気づいた理由

Webブラウザーの開発者ツールを見ていたら、PROFINDメソッドのリクエストに対して403エラーが返っていました。Nextcloudのログには何もエラーはありません。

ここで思いついたのが、PROFINDなんて普通のWebアプリじゃ必要のないメソッドだから弾いているのではないか、ということ。たんに思いついただけです。

ちなみに、PROFINDはWebDAVで必要なメソッドで、たしかに通常のWebアプリでは使われなさそうでした。

なぜiPhoneアプリからはファイルが表示されたのか?

これは推測ですが、

  • モバイルデバイスからのPROFINDは、WAFが安全とみなしている
  • Nextcloudアプリは、PROFINDを使わない

のいずれかだと思います。WAFを無効化する前に、iPhoneのSafariからNextcloudにアクセスしてみれば分かったかもしれませんね。。。