# サーバー要件

Chamilo 2.0をインストールする前に、サーバーが以下の要件を満たしていることを確認してください。

## ソフトウェア要件

### PHP

| 要件           | 最小  | 推奨    |
| ------------ | --- | ----- |
| **PHPバージョン** | 8.2 | 8.3以降 |

### 必要なPHP拡張機能

| 拡張機能                              | 目的                                     |
| --------------------------------- | -------------------------------------- |
| **curl**                          | HTTPリクエスト（API統合、外部サービス）                |
| **fileinfo**                      | アップロードファイルのMIMEタイプ検出                   |
| **gd**                            | 画像処理（サムネイル、CAPTCHA）                    |
| **intl**                          | 国際化（日付、数値、文字列のフォーマット）                  |
| **json**                          | JSONのエンコード/デコード                        |
| **ldap**                          | LDAPコネクタ。LDAPを使用しない場合でも、Chamiloには必要です  |
| **mbstring**                      | マルチバイト文字列処理（UTF-8サポート）                 |
| **openssl**                       | 暗号化操作（HTTPS、パスワードハッシュ、トークン）            |
| **pdo\_mysql** または **pdo\_pgsql** | データベース接続（使用するデータベースに合ったものをインストール）      |
| **xml**                           | XML解析（SCORM、RSS、SOAP）                  |
| **zip**                           | ZIPアーカイブの処理（SCORMパッケージ、一括インポート/エクスポート） |
| **apcu**                          | ユーザーレベルキャッシュ（推奨）                       |
| **opcache**                       | オペコードキャッシュ（パフォーマンス向上のため強く推奨）           |
| **xapian**                        | 全文検索（検索機能を使用する場合のみ、オプション）              |

### データベース

| データベース      | 最小バージョン |
| ----------- | ------- |
| **MySQL**   | 8.0     |
| **MariaDB** | 10.4    |

### ウェブサーバー

| サーバー       | 備考                                                          |
| ---------- | ----------------------------------------------------------- |
| **Apache** | `mod_rewrite` を有効にする必要があります。                                |
| **Nginx**  | URLリライトのための手動設定が必要です。参考設定についてはSymfonyのNginxドキュメントを参照してください。 |

### ビルドツール

| ツール               | 目的                                          |
| ----------------- | ------------------------------------------- |
| **Composer**      | PHP依存関係管理。ChamiloのPHPライブラリをインストールするために必要です。 |
| **Node.js** (18+) | JavaScriptランタイム。フロントエンドアセットをビルドするために必要です。   |
| **npm**           | JavaScriptパッケージマネージャ。Node.jsと一緒にインストールされます。 |

## ハードウェア要件

| リソース        | 最小               | 推奨                                |
| ----------- | ---------------- | --------------------------------- |
| **RAM**     | 2 GB             | 4 GB以上                            |
| **CPU**     | 1コア              | 2コア以上                             |
| **ディスク容量**  | 2 GB（アプリケーションのみ） | 20 GB以上（アップロードコンテンツを含む）           |
| **ディスクタイプ** | HDD              | SSD（データベースおよびキャッシュのパフォーマンスが大幅に向上） |

これらは基本的な数値です。実際の要件は、同時接続ユーザー数やホストするコンテンツの量によって異なります。

## オペレーティングシステム

| OS          | 備考                                              |
| ----------- | ----------------------------------------------- |
| **Linux**   | 推奨。Ubuntu 22.04+、Debian 12+、AlmaLinux 9+、または同等。 |
| **Windows** | 可能ですが十分にテストされていません。開発にはWSL2を使用してください。           |
| **macOS**   | 開発専用 / 未テスト。                                    |

## ネットワーク要件

* サーバーを指すドメイン名。
* HTTPS用のSSL/TLS証明書（Let's Encryptは無料の証明書を提供しています）。
* メールを直接送信する場合のアウトバウンドSMTPアクセス（またはサードパーティのメールサービスを使用）。
* ポート443（HTTPS）、およびオプションでポート80（HTTP、HTTPSへのリダイレクト用）。

## 要件の確認

Chamiloのソースをサーバーに配置した後、PHPの設定を直接確認できます：

```bash
php -m          # インストールされている拡張機能の一覧
php -i          # 完全なPHP情報
```

## ヒント

* **PHP-FPMを使用** することで、ApacheまたはNginxでのパフォーマンスがmod\_phpよりも向上します。
* 500人以上の同時接続ユーザーが予想されるプラットフォームでは、**データベースを専用サーバーに分離** してください。
* **SSDストレージを使用** してください。Chamiloのようなデータベース依存のアプリケーションは、高速なディスクI/Oから大きな恩恵を受けます。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chamilo.org/2.x-ja/gaido-1/admin-guide/installation/server-requirements.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
