インターネット接続がないと報告されるNextcloudアプリのインストールに関するトラブルシューティング
App Storeのインストール失敗の原因を、DNS、HTTPS、プロキシ、TLS、またはNextcloudサーバー自体の設定の問題に絞り込んでください。
Nextcloud 33以降、App Storeのメタデータリクエストのタイムアウトはデフォルトで120秒に設定されており、で調整できますocc。これは応答が遅い場合に役立ちますが、「サーバーにインターネット接続がないため、アプリをインストールできませんでした」というメッセージは、ブラウザからではなく、Nextcloudを実行しているサーバーまたはコンテナから最初に確認する必要があります。
NextcloudのランタイムからApp Storeエンドポイントをテストし、DNS、送信HTTPS、プロキシ設定、証明書の信頼性、またはApp Storeの設定など、具体的なエラーを修正してください。このメッセージは一般的なものであり、サーバー全体がオフラインであることを証明するものではありません。
すべてのアプリが失敗するのか、それとも1つのアプリだけが失敗するのかを確認してください。カタログは読み込まれるものの、1つのアプリがインストールされない場合は、そのアプリのNextcloudバージョンとの互換性とアプリディレクトリのアクセス許可を確認してください。これは必ずしもネットワークの問題ではありません。
より明確なエラーを確認するには、コマンドラインからインストールを試してください。インストールが成功すればアプリがインストールされますので、目的のアプリIDを使用してください。ファイルの所有権を維持するため、HTTPユーザーとして実行してください。DebianまたはUbuntuの場合:
sudo -u www-data php /var/www/nextcloud/occ app:install news
必要なアプリ ID に置き換えてくださいnews。Docker では、Nextcloud アプリ コンテナ内で Web ユーザーとしてコマンドを実行します。出力全体を比較してください。nextcloud.log互換性エラーや権限エラーは、DNS の失敗とは異なる修正が必要です。

NextcloudのPHPプロセスが実行される場所で、これらのチェックを実行してください。ラップトップやDockerホストからのリクエストが成功したとしても、アプリコンテナが同じネットワークアクセス権を持っているとは限りません。
getent ahosts apps.nextcloud.com
curl -sS --connect-timeout 10 --max-time 30 -o /dev/null -w 'HTTP %{http_code}' https://apps.nextcloud.com/api/v1/categories.json
デフォルトの App Store URL は ですhttps://apps.nextcloud.com/api/v1。Nextcloud は、 などのメタデータをcategories.jsonそこから取得します。DNS はアドレスを返し、HTTPS は応答を返す必要があります。名前解決エラーまたはタイムアウトは、DNS、ルーティング、ファイアウォール、またはプロキシの問題を示しています。TLS エラーは、証明書の信頼性またはシステム時刻の問題を示しています。HTTP エラーは、サーバーが応答したことを意味するため、URL とプロキシの応答を確認してください。
Docker環境では、Nextcloudアプリケーションコンテナ内でチェックを実行します。DNSが正しく機能し、送信TCPポート443が許可されていることを確認してください。プロキシが宛先をフィルタリングしている場合は、Nextcloudのログを調べて、App Storeのダウンロードホスト名とカタログホストがないか確認してください。

送信トラフィックにプロキシが必要な場合は、管理者のブラウザやシェルだけでなく、Nextcloud の PHP/HTTP クライアント用にプロキシを設定してください。Nextcloud はproxy、オプションのproxyuserpwd、および設定をサポートしています。プロキシ認証情報は非公開にしてください。PHP-FPM と CLI が同じまたは環境proxyexcludeを継承しているかどうかを確認してください。HTTPS_PROXYNO_PROXY
TLSエラーが発生した場合は、サーバーの時計を確認し、OSのCAバンドルを更新してください。承認済みの企業検査プロキシを使用している場合は、その信頼できるCAをPHPランタイムに追加してください。App curl -kStoreリクエストでTLS検証を無効にしたり、使用したりしないでください。これは、なりすましダウンロードホストに対する保護を弱めることになります。

App Storeはデフォルトで有効になっており、デフォルトのURLは です。有効な値をhttps://apps.nextcloud.com/api/v1確認または照会するには、以下を使用してください。config/config.phpocc
sudo -u www-data php /var/www/nextcloud/occ config:system:get appstoreenabled
sudo -u www-data php /var/www/nextcloud/occ config:system:get appstoreurl
が明示的に false の場合はappstoreenabled、ポリシーでパブリックストアが許可されている場合にのみ有効にしてください。appstoreurl古いカスタムストアまたはアクセスできないカスタムストアを指している場合は、Nextcloud のパブリック App Store を使用する予定がある場合にのみデフォルトに戻してください。セルフホスト型の App Store を使用している組織は、その URL を保持し、代わりに DNS、証明書、またはアクセス パスを修復する必要があります。
カタログが読み込まれるものの、インストールが失敗する場合は、apps_paths有効な構成のエントリを確認してください。少なくとも1つの構成済みアプリディレクトリは、Nextcloudウェブサーバーユーザーが書き込み可能である必要があります。ディレクトリの所有者またはグループと、その書き込み権限を修正してください。ディレクトリをすべてのユーザーが書き込み可能にしないでください。組織の許可リストによってブロックされているアプリ、またはNextcloudのリリースと互換性のないアプリは、ネットワークの変更ではなく、管理者のポリシーまたはバージョンの決定が必要です。
DNS、HTTPS、プロキシ、TLS、および構成チェックに合格したら、アプリページから、または同じocc app:installコマンドを使用してインストールを再試行してください。リクエストに到達できるものの、設定されたメタデータタイムアウトよりも常に時間がかかる場合は、Nextcloud 33以降でタイムアウト値を高く設定できます。例:
sudo -u www-data php /var/www/nextcloud/occ config:app:set settings appstore-timeout --value=180
これにより待機時間が180秒に延長されますが、ブロックされた送信、不正な証明書、または誤ったストアURLは修復されません。Nextcloud 33以降では、ドキュメントに記載されているデフォルト値は120秒です。オーバーライドを削除してデフォルトに戻すには:
sudo -u www-data php /var/www/nextcloud/occ config:app:delete settings appstore-timeout
意図的にエアギャップされたサーバーの場合、承認済みのセルフホスト型アプリストアがサポートされる構成方法です。任意のアプリのZIPファイルをダウンロードしてアプリディレクトリに配置することで障害を解決しようとしないでください。信頼できるソースを使用し、リリースがサーバーと一致していることを確認してください。

App Store カタログが読み込まれ、目的のアプリがインストールされ、有効なアプリ一覧に表示されること、そしてログに試行時の接続、TLS、タイムアウトのエラーが記録されなくなったことを確認してください。エンドポイントが Nextcloud のランタイムから応答しているにもかかわらず、UI にインターネット接続がないと表示される場合は、App Store の URL と設定を比較し、PHP-FPM と CLI のプロキシ環境の違いを確認し、1 つのアプリのみがブロックされているか、互換性がないかどうかを確認してください。
参照: Nextcloud アプリ管理と App Store 設定; Nextcloud OCC アプリと構成コマンド;プロキシの Nextcloud 構成パラメータ; Nextcloud App Store メタデータ エンドポイント。
App Storeのインストール失敗の原因を、DNS、HTTPS、プロキシ、TLS、またはNextcloudサーバー自体の設定の問題に絞り込んでください。
サムネイル作成作業を制御されたバックグラウンドスケジュールに移行し、使用されていないプレビューサイズをトリミングし、Nextcloudサーバーに過負荷をかけることなくキューを検証します。
Nextcloudの同期を妨げているファイル、除外ルール、接続の問題、またはクライアントデータベースの状態を特定し、アップロードとダウンロードが安全に行われることを確認します。
Nextcloudの警告を引き起こしているPHP OPcacheの制限値を特定し、適切なWeb PHP設定を更新し、安全に再起動して、結果を確認してください。
組み込みのCODEとDockerベースのCODEを比較し、安全なHTTPSリバースプロキシを介してCollabora OnlineをNextcloudに接続します。
共有ストレージ、Redisロック、クォーラム対応MariaDBルーティング、および実用的なフェイルオーバーチェックを備えた、信頼性の高いNextcloud HAデプロイメントを計画します。
ファイアウォールや制限的なNATによって直接通話メディアがブロックされる場合に、Nextcloud Talk用の到達可能なTURNリレーを設定および検証します。
無効ファイルレポートを使用して、変更された、欠落している、または余分な Nextcloud コードを特定し、信頼できるファイルを安全に復元し、結果を確認します。
Nextcloud MailでGmailまたはMicrosoft 365を使用してOAuth2を設定し、送受信を確認し、一般的な同意エラーやSMTPエラーを解決します。
OCCを使用してNextcloudへのアクセスを復元し、データベース移行のステータスを確認し、アーカイブ、Docker、またはSnapのインストールに適したコマンドを選択します。