PythonとSimple-Matrix-Bot-Libを使用してMatrix Botをセットアップする方法
PythonとSimple-Matrix-Bot-Libを使用してMatrixボットを構築し、認証とデプロイのオプションを比較し、コマンドをテストし、代わりにmatrix-nioを使用すべき場合を理解します。
NextcloudのPHPメモリ制限警告を解消するには、 Webサーバーで使用されているPHP設定でメモリをmemory_limit少なくとも512MBに設定し512M、関連するPHPサービスを再起動またはリロードしてください。Nextcloudの現在の安定版管理マニュアルでは、このPHP設定に少なくとも512MBを推奨しています。ファイルを編集した後も警告が残る最も一般的な理由は、WebサーバーがコマンドラインPHPインストールとは異なるPHP設定を使用しているためです。
デプロイメントに合った手順を選択してください。Apacheとmod_php、ApacheまたはNginxとPHP-FPM、コンテナ、または管理対象のNextcloudパッケージphp.iniから選択できます。ホストのランダムな設定を編集して、すべてのデプロイメントでそれが使用されると想定しないでください。Webアプリケーションの設定が反映されているNextcloudの管理画面の概要ページで結果を確認してください。
PHP の ` memory_limit-
PHPの制限値を引き上げることで、設定に関する警告を解消し、メモリを大量に消費するリクエストに余裕を持たせることができます。ただし、容量不足のホストにRAMを追加したり、メモリリークを修復したり、すべてのアプリケーションが正常に完了することを保証したりすることはできません。サーバーが既にメモリ不足の状態にある場合、リクエストごとの上限値を引き上げると、同時実行されるPHPワーカーがシステムRAMを使い果たしてしまうリスクが高まる可能性があります。
まず、PHP が Nextcloud をどのように実行しているかを確認します。ターミナルでphp --iniコマンドを実行すると、コマンドラインインターフェース (CLI) の設定が表示されます。Nextcloud の Web リクエストは、別の Apache モジュールまたは PHP-FPM サービスを使用し、php.ini別の設定ファイルやプールオーバーライドを使用する場合があります。Nextcloud は、Web と CLI の PHP で異なる設定ファイルを使用する可能性があることを特に明記しています。
Debian系システムにおける一般的な配置場所としては、/etc/php/8.x/apache2/php.iniApacheのPHPモジュール用と/etc/php/8.x/fpm/php.iniPHP-FPM用があります。実際のPHPバージョンとディレクトリ名は異なります。他のディストリビューションでは、共有パスなど、異なるパスが使用されることがよくあります/etc/php.ini。これらはあくまで例であり、パッケージマネージャ、サービス設定、PHPランタイムを使用して、アクティブなファイルを見つけてください。
CLIの設定を確認するには、以下を実行します。
php --ini
php -i | grep -i '^memory_limit'
これらのコマンドは、コマンドラインからPHPを呼び出すスケジュール済みジョブには便利ですが、ブラウザ側のNextcloudプロセスが同じ値を使用していることを証明するものではありません。phpinfo()サーバー上に公開ページを残さないようにしてください。パス、モジュール、実行時の詳細が漏洩する可能性があります。
変更する前に、アクティブな構成ファイルをバックアップしてください。正しいファイルでphp.ini、既存の行を見つけて、それをまたはワークロードに合わせて選択したより高い値memory_limitに設定します。512M
memory_limit = 512M
複数のファイルの末尾に重複した行を追加するのではなく、1つのアクティブな設定を使用してください。PHP-FPM プールはワーカーの値を定義することもできるため、値が反映されphp.iniない場合はプール構成を確認してください。一部の PHP デプロイメントではディレクトリごとの設定がサポートされています.user.ini。これがアクティブかどうかはサーバー構成によって異なるため、管理者に確認してください。
Apacheで使用されるファイルを編集してphp.ini保存し、Apacheを再起動してモジュールの設定を再読み込みします。サービス名はシステムによって異なります。DebianまたはUbuntuでは、サービスは一般的に です。RHELapache2系システムでは、サービスは一般的に ですhttpd。ご使用のオペレーティングシステムとメンテナンス手順に合わせてサービス名を使用してください。
sudo systemctl restart apache2
ディストリビューションで異なるユニット名を使用している場合は、置き換えてくださいapache2。Nextcloudがmod_phpではなくPHP-FPM経由で提供されている場合、Apacheを再起動するだけではPHPワーカーは再ロードされません。
サイトで実際に使用されている PHP-FPM の設定を編集します。変更を保存したら、該当する PHP-FPM サービスを再起動またはリロードします。ユニットには、たとえば PHP のバージョンが含まれる場合もあればphp8.3-fpm、ベンダー固有の別の名前が使用される場合もあります。
sudo systemctl restart php8.3-fpm
インストールされている PHP バージョンに合った正しいサービス名を使用してください。Nginx は PHP リクエストを FPM に渡すため、PHP の設定を変更する場合は通常、FPM にも変更を適用する必要があります。Nginx を再起動しても PHP のメモリ制限は再読み込みされません。PHP-FPM プール構成で上書きされている場合はmemory_limit、プール設定を調整するか、上書きを削除してからプールを再起動してください。
そのインストール方法に適した設定メカニズムを使用してください。ホストの PHP ファイルを編集しても、コンテナ内または隔離されたパッケージ内の PHP ランタイムは通常変更されません。公式の Nextcloud Docker イメージにはPHP_MEMORY_LIMIT環境変数が記載されており、現在のイメージのドキュメントではデフォルト値が512M設定されています。Compose ファイルまたはコンテナ構成でこの環境変数を設定し、デプロイメントの手順に従ってアプリケーション コンテナを再作成または再起動してください。
environment:
PHP_MEMORY_LIMIT: 512M
その設定をすべてのインストールタイプにコピーしないでください。Nextcloudのマニュアルには、AIO、Snap、NCP、Community Dockerなどのターンキー環境にはPHPが事前設定済みであり、カスタマイズについてはパッケージ固有の手順を参照するように管理者に指示されています。これらの環境では、そのパッケージでサポートされているインターフェースまたはドキュメントを使用してください。永続ボリュームのマウントや生成された構成によって、一度限りの手動編集が上書きされる場合もあります。
システムcron経由でNextcloudのバックグラウンドジョブも実行している場合は、CLIのPHP設定を別途確認してください。CLIジョブがまだ低い制限値を使用している状態でも、Webに公開されている警告は解消できます。cronコマンドで使用されているのphp --iniとphp -i同じPHPバイナリに対して、CLIの値を確認してください。
警告が消えたにもかかわらず、ドキュメント化されたワークロードがまだ PHP の制限に達している場合、またはアプリのサポートガイダンスでより多くのメモリが要求されている場合にのみ、この値を上げてください。まず、実際のサーバーメモリ、PHP-FPM ワーカー数、データベースメモリ、およびその他のサービスを確認してください。PHP はスクリプトごとに制限を適用するため、複数のビジーワーカーが同時に大量のメモリを使用する可能性があります。PHP-1のドキュメントではメモリ制限がないとされている を使用する代わりに、ホストのメモリ予算に合った測定された制限を設定してください。
警告が消えてもサーバーの速度が低下したり、プロセスが強制終了される場合は、システムメモリとスワップの使用状況、PHP-FPM ログ、および Nextcloud ログを確認してください。特定のアプリケーションまたはリクエストが過剰なメモリを消費していないか確認してください。APCu や Redis などのメモリ キャッシュは、キャッシュとパフォーマンスの問題に対処するものであり、PHP の設定の代替となるものではありませんmemory_limit。結果が改善されたかどうかを確認できるように、一度に 1 つの要素を変更してください。
PythonとSimple-Matrix-Bot-Libを使用してMatrixボットを構築し、認証とデプロイのオプションを比較し、コマンドをテストし、代わりにmatrix-nioを使用すべき場合を理解します。
DNS、ファイアウォールルール、公式リポジトリ、Let's Encrypt SSL、サービスチェック、NATトラブルシューティングを含むJitsi MeetをUbuntu 24.04にインストールします。
ownCloud Desktopの同期証明書エラーを修正するには、サーバーURL、証明書名と証明書チェーン、システムクロック、クライアントバージョン、および信頼済みCAストアを確認してください。
PhpRedis、APCu、ループバック専用のRedisサービス、および実践的な検証手順を使用して、Ubuntu 24.04上でNextcloud向けにRedisファイルロックと分散キャッシュを設定します。
デバイス認証、キーのバックアップ、リカバリキー、および紛失したルームキーを確認することで、メッセージ履歴を損なうことなく、Element Webの復号化エラーをトラブルシューティングします。
Nextcloudの2要素認証プロバイダーを有効にする方法、ユーザーまたはグループに対して2要素認証を強制する方法、復旧を準備する方法、ログインとクライアントアプリを検証する方法を学びましょう。
zimbraMtaMyNetworks を使用すると、Zimbra で認証されていない送信メールのリレーを信頼できる IP アドレスに制限できます。許可リストを安全に検査、更新、再読み込み、検証する方法を学びましょう。
Nextcloud の PHP メモリ制限を少なくとも 512M に設定し、適切な Web PHP 設定を見つけて、Apache または PHP-FPM を再起動し、警告が解消されたことを確認してください。
CoturnをSynapseと連携させて、Matrix WebRTC通話を設定します。共有認証情報、NAT、ファイアウォールポート、TLSオプションを設定し、従来のTURNとMatrixRTCおよびLiveKitを区別します。
Nextcloud MailをGmailまたはMicrosoft 365向けにOAuth2で設定し、IMAP/SMTPアクセスを確認し、リダイレクトの問題をトラブルシューティングし、制限事項を把握します。