Nextcloud バックグラウンドジョブの設定を解決する方法

02-Nextcloud バックグラウンドジョブの設定を解決する方法 サアロフィア Surlofia Nextcloud

【2022年12月】エックスサーバーで、Nextcloud の「バックグラウンドジョブの設定を確認してください。」で困ったときの解決方法。

[December 2022] On X server, Nextcloud says “Check the background job settings.” How to solve a problem with.

その他の解決方法については、下記の記事をご覧ください。

セキュリティ&セットアップ警告
Security & setup warnings

バックグラウンドジョブの設定を確認してください。
Check the background job settings .

最後のバックグラウンドジョブの実行は3 時間前を実行しました。何かがおかしいようです。 バックグラウンドジョブの設定を確認してください↗。

Last background job execution ran 3 hour ago. Something seems wrong. Check the background job settings ↗.

https:// (あなたのドメイン名) / (nextcloud をインストールしたフォルダ) /index.php/settings/admin/overview
https:// (your domain name) / (the folder where you installed nextcloud) /index.php/settings/admin/overview

リンクをクリックすると、基本設定が表示されます。

Nextcloud バックグラウンドジョブの設定
Nextcloud Check the background job settings

タイトル横の ? マークをクリックすると説明ページが表示されます。

Cron jobs
You can schedule cron jobs in three ways – using AJAX, Webcron, or cron. The default method is to use AJAX. However, the recommended method is to use cron. The following sections describe the differences between each method.

Cron
And append this line:

*/5 * * * * php -f /var/www/nextcloud/cron.php

Note
注釈
いくつかの環境では、–define apc.enable_cli=1 を cron コマンドに追加する必要があるかもしれません。 Memory caching (APCu の章) をご覧ください。
For some configurations, it might be necessary to append –define apc.enable_cli=1 to the cron command. Please refer to Memory caching (section APCu).

https://docs.nextcloud.com/server/25/admin_manual/configuration_server/background_jobs_configuration.html

Memory caching のリンク

APCu
APCu is a data cache, and it is available in most Linux distributions. On Red Hat/CentOS/Fedora systems install php-pecl-apcu. On Debian/Ubuntu/Mint systems install php-apcu.

After restarting your Web server, add this line to your config.php file:

‘memcache.local’ => ‘\OC\Memcache\APCu’,

Refresh your Nextcloud admin page, and the cache warning should disappear.

警告
Warning

CLI (= Command Line Interface コマンドラインインターフェース) では APCu がデフォルトで無効になっているため、nextcloud の cron ジョブで問題が発生する可能性があります。 

APCu is disabled by default on CLI (= Command Line Interface) which could cause issues with nextcloud’s cron jobs.

php.ini 設定ファイルで、 apc.enable_cli1 に設定する
か、
cron ジョブ呼び出しに –define apc.enable_cli=1 を追加してください。

Please make sure you set the apc.enable_cli to 1 on your php.ini config file
or
append –define apc.enable_cli=1 to the cron job call.

https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/caching_configuration.html#id1

サーバー管理 (サーバーパネル)を使用して解決します。

Cron設定 追加します

https://secure.xserver.ne.jp/xapanel/login/xserver/server/
エックスサーバーにログインします。

サーバーパネルを表示します。
※ https://secure.xserver.ne.jp/xserver/ (あなたのサーバー番号) / (あなたのサーバー ID ) .xsrv.jp/?action_user_index=true をブラウザで表示します。

エックスサーバー Cron設定

Cron設定を左クリックします。

エックスサーバー Cron設定追加

関連マニュアル Cron設定 によると、下記のコマンド入力をすることになります。

/usr/bin/php8.1 /home/yourid/example.com/public_html/yournextcloud/cron.php

しかし、エラー警告は消えません、改善されません。

Cron設定 エラーメッセージの場所

関連マニュアル Maildirについて で、エラーメッセージの場所を確認します。

 エックスサーバー契約管理ページ ( https://secure.xserver.ne.jp/xapanel/xserver/index ) に戻り、「ファイル管理」を左クリックして、ファイルマネージャを表示します。

 /home/ (あなたのサーバー ID ) / Maildir.x (x = 1, 2, 3 など順番に付与) /new を選択して、更新日時が一番新しいファイルを選択して、画面上部の「編集」を左クリックします。

 一番下の行に、下記のメッセージがありました。

OCP\HintException: [0]: Memcache \OC\Memcache\APCu not available for local cache (Is the matching PHP module installed and enabled?)

OCP\HintException: [0]: Memcache \OC\Memcache\APCuがローカルキャッシュで利用できない(該当するPHPモジュールがインストールされ、有効になっていますか?)

 ようやく、意味が分かりました。

–define apc.enable_cli=1 を cron コマンドに追加する必要がある
be necessary to append –define apc.enable_cli=1 to the cron command

という訳で、Cron設定のコマンド入力を下記のように入力しました。
ただし、下記の3か所は、あなたの情報に置き換えてください。

/usr/bin/php8.1 --define apc.enable_cli=1 /home/yourid/example.com/public_html/yournextcloud/cron.php

エックスサーバーの Cron 設定で入力するべき内容

項目入力内容
*/5
時間、日、月*
コマンド/usr/bin/php8.1 –define apc.enable_cli=1 /home/yourid/example.com/public_html/yournextcloud
コメントあなたの覚書
Nectcloud エックスサーバー Cron 設定方法と注意事項

 その結果、バックグラウンドジョブが正常に動作するようになりました。

Nextcloud バックグラウンドジョブ 最終ジョブ実行は 2分前です。
Nextcloud Background jobs Last job ran 3 minutes ago.
タイトルとURLをコピーしました