2024年3月に Craft 5 がリリースされました。
Craft 5 Released—with New Team Edition! | Craft CMS
https://craftcms.com/blog/craft-5
Matrix のネストやフィールドインスタンスなど、とても便利な新機能が追加されているのですが、必要となるシステム要件もアップデートされています。
そこで、過去の記事と同様、Craft 4 と Craft 5 のシステム要件の違いを確認してみましょう。
これは Craft CMS Advent Calendar 2024 11日目の記事です。
バージョンごとの要件を比較
Craft CMS のシステム要件は、公式ドキュメントに記載されています。(実際に確認される際は、メニュー上部にあるプルダウンで対象バージョンの切り替えが可能です。)
Requirements | Craft CMS Documentation | 4.x
https://craftcms.com/docs/4.x/requirements.html
Requirements | Craft CMS Documentation | 5.x
https://craftcms.com/docs/5.x/requirements.html
それぞれ違いがある項目について、比較してみます。
最低限必要なシステム構成
Craft 4 | Craft 5 | |
---|---|---|
PHP | PHP 8.0.2 以上 | PHP 8.2 以上 |
データベース | MySQL 5.7.8 以上(InnoDB) MariaDB 10.2.7 以上 PostgreSQL 10 以上 | MySQL 8.0.17 以上(InnoDB) MariaDB 10.4.6 以上 PostgreSQL 16 以上 |
PHP 割り当てメモリ | 256MB 以上 | 256MB 以上 |
ディスクスペース | 200MB 以上 | 200MB 以上 |
Composer | Composer 2.0 以上 | Composer 2.0 以上 |
Craft 5 では、必須となる PHP およびデータベースのバージョンが変更になっていますので、インストール先のサーバーがそもそも対応可能かを確認してください。
(過去記事に記載の通り)以前の Craft 4 は Composer 2.0 以上が必須ではなかったと思うのですが、どこかのタイミングで変更になったようですね。
新たに環境を用意する時点で、公式ドキュメントの最新情報を確認するようにしてください。
開発元が推奨するシステム構成
Craft 4 | Craft 5 | |
---|---|---|
PHP | PHP 8.1 以上 | PHP 8.2 以上 |
データベース | MySQL 5.7.8 以上(InnoDB) MariaDB 10.5 以上 PostgreSQL 10 以上 | MySQL 8.0.36 以上(InnoDB) PostgreSQL 16 以上 |
PHP 割り当てメモリ | 512MB 以上 | 512MB 以上 |
ディスクスペース | 200MB 以上 |
Craft 5 の推奨環境から、MariaDB が削除されました。
その理由については、公式リポジトリの Discussion で Brandon さんが2023年12月にコメントされています。
[5.x][MariaDB] add Field::getValueSql Event / support virtual columns / how to increase query performance · craftcms/cms · Discussion #13997
https://github.com/craftcms/cms/discussions/13997
パフォーマンスと安定性への懸念、JSON カラムをサポートしていないことから MariaDB は非推奨となり、将来的には利用できなくする想定のようですので、頭の片隅に置いておきましょう。(現時点では、Craft 5 で MariaDB はサポートされています。)
PHP 拡張モジュール
Craft 4 | Craft 5 |
---|---|
BCMath ctype cURL GD または ImageMagick iconv Intl JSON Multibyte String OpenSSL PCRE PDO MySQL Driver または PDO PostgreSQL Driver PDO Reflection SPL Zip DOM | BCMath ctype cURL GD または ImageMagick iconv Intl JSON Multibyte String OpenSSL PCRE PDO MySQL Driver または PDO PostgreSQL Driver PDO Reflection SPL Zip DOM |
PHP 拡張モジュールについては、Craft 4 と Craft 5 で変更はありません。
追加で確認しておきたいこと
必要に応じて・・・ではありますが、次の2点については事前に確認しておくことをオススメします。
max_input_vars
過去記事でも触れていますが、PHP の max_input_vars
がデフォルト値の 1,000
で足りるかを検討してください。
編集画面に複数の Matrix ブロックを含む場合など、この値を超えた入力データが保存されない可能性があります。
最大アップロードサイズ
Craft CMS のシステムデフォルトのアップロード上限サイズは 16MB
です。
そのため、PHP の設定で upload_max_filesize
や post_max_size
に余裕を持たせていても、アップロードエラーになるかもしれません。
その場合、.env
に CRAFT_MAX_UPLOAD_FILE_SIZE
を追記しましょう。
CRAFT_MAX_UPLOAD_FILE_SIZE=134217728, // 最大アップロードサイズを 128MB に変更
General Settings | Craft CMS Documentation | 5.x
https://craftcms.com/docs/5.x/reference/config/general.html#maxuploadfilesize
最後に
今回も、備忘録を兼ねて Craft CMS のシステム要件を確認してみました。
PHP 8.2、MySQL 8.0.17 以上が必須(かつ、MariaDB がいずれサポート対象外になるかも)ということで、レンタルサーバーで運用しているサイトはサーバー移行も視野に入れないとな・・・と思ったところでした。