paramètres PHP

Vous pouvez choisir la version de PHP à exécuter dans votre fichier .magento.app.yaml :

name: mymagento
type: php:<version>
TIP
Si vous effectuez une mise à niveau vers PHP 8.1 et versions ultérieures, supprimez JSON de la propriété runtime: extensions: dans le fichier .magento.app.yaml et redéployez-la. L’extension JSON est installée dans l’environnement cloud depuis PHP 8.0.

Configurer PHP

Vous pouvez personnaliser les paramètres PHP de votre environnement à l’aide d’un fichier php.ini ajouté à la configuration gérée par Adobe Commerce.

Dans votre référentiel, ajoutez le fichier php.ini à la racine de l’application (racine du référentiel).

TIP
La configuration incorrecte des paramètres PHP peut entraîner des problèmes. Par conséquent, seuls les administrateurs avancés doivent définir ces options.

Augmentation de la limite de mémoire PHP

Pour augmenter la limite de mémoire PHP, ajoutez le paramètre suivant au fichier php.ini :

memory_limit = 1G

Pour le débogage, augmentez la valeur à 2G.

Optimisation de la configuration realpath_cache

Définissez les paramètres realpath_cache suivants pour améliorer les performances de l’application.

;
; Increase realpath cache size
;
realpath_cache_size = 10M

;
; Increase realpath cache ttl
;
realpath_cache_ttl = 7200

Ces paramètres permettent aux processus PHP de mettre en cache les chemins d’accès aux fichiers au lieu de les rechercher pour chaque chargement de page. Voir Réglage des performances dans la documentation PHP.

NOTE
Pour obtenir la liste des paramètres de configuration PHP recommandés, voir Paramètres PHP requis dans le Guide d’installation.

Vérifier les paramètres PHP personnalisés

Après avoir apporté les modifications php.ini à votre environnement cloud, vous pouvez vérifier que la configuration PHP personnalisée a été ajoutée à votre environnement. Par exemple, utilisez SSH pour vous connecter à l’environnement distant et afficher le fichier à l’aide de quelque chose comme suit :

cat /etc/php/<php-version>/fpm/php.ini
WARNING
Si vous utilisez Cloud Docker pour Commerce pour le développement local, reportez-vous à la section Conteneurs de service Docker pour plus d’informations sur l’utilisation d’un fichier php.ini personnalisé dans un environnement Docker.

Activation des extensions

Vous pouvez activer ou désactiver des extensions PHP dans la section runtime:extension . En outre, les extensions spécifiées deviennent disponibles dans les conteneurs PHP Docker.

IMPORTANT
Avant d’activer les extensions, il est important de comprendre que la version PHP doit être compatible avec le système d’exploitation hébergeant le projet. L’équipe d’infrastructure peut avoir besoin d’une mise à niveau du système d’exploitation pour votre environnement de projet avant de pouvoir continuer.

Exemple dans le fichier .magento.app.yaml :

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

Utilisez SSH pour vous connecter à un environnement et répertorier les extensions PHP.

php -m

Pour plus d’informations sur une extension PHP spécifique, consultez la liste d’extensions PHP.

Le tableau suivant présente les extensions PHP prises en charge lors du déploiement d’Adobe Commerce sur la plateforme Cloud.

Extensions par défaut
Extensions installées non désinstallées
Extensions qui peuvent être installées et désinstallées si nécessaire
bcmath
bz2
calendar
exif
gd
gettext
intl
libxml
mysqli
opcache
pcntl
pdo_mysql
Reflection
soap
sockets
SPL
standard
swoole
sysvmsg
sysvsem
sysvshm
zip
zlib
ctype
curl
date
dba
dom
fileinfo
filter
ftp
hash
iconv
json
mbstring
mysqlnd
openssl
pcre
pdo
pdo_sqlite
phar
posix
readline
session
sqlite3
tokenizer
xml
xmlreader
xmlwriter
geoip
gmp
igbinary
imagick
imap
ldap
mailparse
mcrypt
msgpack
mysqli
oauth
pdo_mysql
propro
pspell
raphf
enregistrement
redis
sockets shmop
sodium
ssh2
tidy
xdebug
xmlrpc
xsl
yaml

Les exigences du module PHP sont liées à la version Adobe Commerce. Voir Exigences de PHP.

Prise en charge des extensions

Pour les projets Pro, les extensions suivantes nécessitent une prise en charge supplémentaire pour l’installation :

  • ioncube
  • sourceguardian

Par exemple, pour configurer PHP afin d’exécuter uniquement les scripts protégés par SourceGuardian dans tous les environnements, l’option suivante doit être définie dans le fichier php.ini :

[SourceGuardian]
sourceguardian.restrict_unencoded = "1"

Voir la section 3.5 de la documentation de SourceGuardian. Il s’agit d’un lien vers un PDF.

Envoyez un ticket de support Adobe Commerce pour obtenir de l’aide sur l’installation de ces extensions PHP dans tous les environnements de production et dans les environnements d’évaluation Pro. Incluez votre fichier .magento/services.yaml mis à jour, le fichier .magento.app.yaml avec la version PHP mise à jour et toutes les extensions PHP supplémentaires. Pour les modifications apportées à un environnement de production actif, vous devez fournir un préavis d’au moins 48 heures. La mise à jour de votre projet peut prendre jusqu’à 48 heures pour que l’équipe chargée de l’infrastructure du cloud.

WARNING
PHP compilé avec le débogage n’est pas pris en charge et le proxy peut entrer en conflit avec XDebug ou XHProf. Désactivez ces extensions lors de l’activation de Probe. La propriété Probe est en conflit avec certaines extensions PHP telles que Pinba ou IonCube.
recommendation-more-help
05f2f56e-ac5d-4931-8cdb-764e60e16f26