PHP 設定

.magento.app.yaml ファイルで実行する PHP のバージョンを選択できます。

name: mymagento
type: php:<version>
TIP
PHP 8.1 以降にアップグレードする場合は、.magento.app.yaml ファイルの runtime: extensions: プロパティから JSON を削除し再デプロイします。 JSON 拡張機能は、PHP 8.0 以降、クラウド環境にインストールされています。

PHP の設定

Adobe Commerceが管理する設定に追加された php.ini ファイルを使用して、PHP の設定をカスタマイズできます。

リポジトリで、php.ini ファイルをアプリケーションのルート(リポジトリルート)に追加します。

TIP
PHP の設定を適切に行わないと問題が発生する可能性があるため、これらのオプションを設定するのは上級管理者のみにしてください。

PHP のメモリ制限を増やす

PHP のメモリ上限を増やすには、php.ini ファイルに次の設定を追加します。

memory_limit = 1G

デバッグするには、値を 2G に増やします。

realpath_cache 構成の最適化

アプリケーションのパフォーマンスを向上させるには、次の realpath_cache 設定を行います。

;
; Increase realpath cache size
;
realpath_cache_size = 10M

;
; Increase realpath cache ttl
;
realpath_cache_ttl = 7200

これらの設定により、PHP プロセスは、ページが読み込まれるたびにパスを検索する代わりにファイルへのパスをキャッシュすることができます。 PHP ドキュメントの パフォーマンスチューニングを参照してください。

NOTE
推奨される PHP 設定の一覧については、インストールガイド必要な PHP 設定を参照してください。

カスタム PHP 設定の確認

php.ini の変更をクラウド環境にプッシュしたら、カスタム PHP 設定が環境に追加されたことを確認できます。 例えば、SSH を使用してリモート環境にログインし、次のような方法でファイルを表示します。

cat /etc/php/<php-version>/fpm/php.ini
WARNING
Cloud Docker for Commerceをローカル開発に使用する場合、Docker 環境でカスタム php.ini ファイルを使用する方法については、Docker サービスコンテナを参照してください。

拡張機能の有効化

runtime:extension のセクションでは、PHP 拡張機能を有効または無効にすることができます。 また、指定された拡張機能は、Docker PHP コンテナで使用できるようになります。

IMPORTANT
拡張機能を有効にする前に、PHP バージョンがプロジェクトをホストするオペレーティングシステムと互換性を持つ必要があることを理解しておくことが重要です。 プロジェクト環境では、続行する前に、インフラストラクチャチームによる OS のアップグレードが必要になる場合があります。

ファイル .magento.app.yaml 例:

runtime:
    extensions:
        - sockets
        - sodium
        - ssh2
    disabled_extensions:
        - bcmath
        - bz2
        - calendar
        - exif

SSH を使用して環境にログインし、PHP の拡張機能を一覧表示します。

php -m

特定の PHP 拡張モジュールについて詳しくは、PHP 拡張モジュールの一覧を参照してください。

次の表に、Cloud Platform にAdobe Commerceをデプロイする際にサポートされる PHP 拡張機能を示します。

デフォルトの拡張機能
アンインストールできないインストール済み拡張機能
必要に応じてインストールおよびアンインストールできる拡張機能
bcmath
bz2
カレンダー
exif
gd
gettext
intl
libxml
mysqli
opcache
pcntl
pdo_mysql
反射
soap
ソケット
SPL
標準
スウール
sysvmsg
システムの設定
sysvshm
郵便番号
zlib
ctype
curl
日付
dba
dom
fileinfo
フィルター
ftp
hash
iconv
json
mbstring
mysqlnd
openssl
pcre
pdo
pdo_sqlite
phar
posix
readline
セッション
sqlite3
tokenizer
xml
xmlreader
xmlwriter
geoip
gmp
igbinary
imagick
imap
ldap
mailparse
mcrypt
msgpack
mysqli
oauth
pdo_mysql
propro
pspell
グラフ
コード
redis
shmop ソケット
ナトリウム
ssh2
ティディ
xdebug
xmlrpc
xsl
yaml

PHP のモジュール要件は、Adobe Commerceのバージョンに関連付けられています。 PHP の要件を参照してください。

拡張機能のサポート

Pro プロジェクトの場合、次の拡張機能のインストールには追加のサポートが必要です。

  • ioncube
  • sourceguardian

例えば、すべての環境で SourceGuardian 保護スクリプトのみを実行するように PHP を設定するには、php.ini ファイルで以下のオプションを設定する必要があります。

[SourceGuardian]
sourceguardian.restrict_unencoded = "1"

SourceGuardian ドキュメントの 3.5 節を参照してください。 PDFへのリンクです

Adobe Commerce サポートチケットを送信すると、これらの PHP 拡張機能をすべての実稼動環境および Pro ステージング環境にインストールする際のヘルプが表示されます。 更新した .magento/services.yaml ファイル、更新した PHP バージョン .magento.app.yaml 含むファイル、および追加の PHP 拡張子を含めます。 実稼動環境に変更を加える場合は、少なくとも 48 時間は通知する必要があります。 クラウドインフラストラクチャチームがプロジェクトを更新するまで、最大 48 時間かかる場合があります。

WARNING
debug を指定してコンパイルされた PHP はサポートされておらず、Probe は XDebug または XHProf と競合する可能性があります。 プローブを有効にする場合は、これらの拡張機能を無効にします。 Probe は Pinba や IonCube のような PHP 拡張モジュールと競合します。
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26