PHP-Einstellungen

Sie können auswählen, welche Version von PHP in Ihrer .magento.app.yaml-Datei ausgeführt werden soll:

name: mymagento
type: php:<version>
TIP
Wenn Sie auf PHP 8.1 und höher aktualisieren, entfernen Sie JSON aus der runtime: extensions:-Eigenschaftder .magento.app.yaml-Datei und stellen Sie erneut bereit. Die JSON-Erweiterung wird seit PHP 8.0 in der Cloud-Umgebung installiert.

Konfigurieren von PHP

Sie können die PHP-Einstellungen für Ihre Umgebung mithilfe einer php.ini-Datei anpassen, die an die von Adobe Commerce gepflegte Konfiguration angehängt wird.

Fügen Sie in Ihrem Repository die php.ini Datei zum Stamm des Programms (dem Repository-Stamm) hinzu.

TIP
Die fehlerhafte Konfiguration von PHP-Einstellungen kann Probleme verursachen, sodass nur erfahrene Administratoren diese Optionen festlegen sollten.

PHP-Speicherlimit erhöhen

Um die PHP-Speicherbegrenzung zu erhöhen, fügen Sie der php.ini-Datei die folgende Einstellung hinzu:

memory_limit = 1G

Erhöhen Sie zum Debuggen den Wert auf 2G.

Optimieren der realpath_cache-Konfiguration

Legen Sie die folgenden realpath_cache fest, um die Anwendungsleistung zu verbessern.

;
; Increase realpath cache size
;
realpath_cache_size = 10M

;
; Increase realpath cache ttl
;
realpath_cache_ttl = 7200

Diese Einstellungen ermöglichen es PHP-Prozessen, Pfade zu Dateien zwischenzuspeichern, anstatt sie bei jedem Laden der Seite zu suchen. Siehe Leistungsoptimierung in der PHP-Dokumentation.

NOTE
Eine Liste der empfohlenen PHP-Konfigurationseinstellungen finden Sie unter Erforderliche PHP im Installationshandbuch.

Überprüfen der benutzerdefinierten PHP-Einstellungen

Nachdem Sie die php.ini Änderungen in Ihre Cloud-Umgebung übertragen haben, können Sie überprüfen, ob die benutzerdefinierte PHP-Konfiguration zu Ihrer Umgebung hinzugefügt wurde. Verwenden Sie beispielsweise SSH, um sich bei der Remote-Umgebung anzumelden und die Datei mit etwas Ähnlichem wie dem folgenden anzuzeigen:

cat /etc/php/<php-version>/fpm/php.ini
WARNING
Wenn Sie Cloud Docker für Commerce für die lokale Entwicklung verwenden, finden Sie Docker-Service-Container Informationen zur Verwendung einer benutzerdefinierten php.ini in einer Docker-Umgebung.

Erweiterungen aktivieren

Sie können PHP-Erweiterungen im Abschnitt runtime:extension aktivieren oder deaktivieren. Außerdem werden die angegebenen Erweiterungen in den Docker-PHP-Containern verfügbar.

IMPORTANT
Bevor Sie Erweiterungen aktivieren, müssen Sie wissen, dass die PHP-Version mit dem Betriebssystem kompatibel sein muss, das das Projekt hostet. Bevor Sie fortfahren können, muss Ihre Projektumgebung möglicherweise vom Infrastruktur-Team auf das Betriebssystem aktualisiert werden.

Beispiel in .magento.app.yaml Datei:

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

Verwenden Sie SSH, um sich bei einer Umgebung anzumelden und die PHP-Erweiterungen aufzulisten.

php -m

Einzelheiten zu einer bestimmten PHP-Erweiterung finden Sie in der PHP Extension List.

Die folgende Tabelle zeigt die unterstützten PHP-Erweiterungen bei der Bereitstellung von Adobe Commerce auf der Cloud-Plattform.

Standarderweiterungen
Installierte Erweiterungen, die nicht deinstalliert werden können
Erweiterungen, die bei Bedarf installiert und deinstalliert werden können
bcmath
BZ2

exif
GD
getText
intl
libxml
mysqli
opcache
PCNTL
pdo_mysql
Reflexion
SOAP
Steckdosen
SPL
Standard
Swole
sysvmsg
Systemsystem
sysvshm
zip
zlib
ctype
cURL
Datum
DBA
DOM
fileInfo
filter
FTP
hash
iconv
JSON
mbstring
mysqlnd
openssl
PCRE
g.U
pdo_sqlite
PHAR
POSIX
bereit
Sitzung
sqlite3
Tokenizer
XML
XmlReader
XmlWriter
GeoIP
gmp
binär
imagick
IMAP
LDAP
mailParse
mcrypt
msgpack
mysqli
OAuth
pdo_mysql
Pro
pspell
raphf
neu kodieren
Redis
Verkaufsstellen
Natrium
ssh2
Aufgeräumt
xdebug
xmlrpc
XSL
YAML

Die PHP-Modulvoraussetzungen sind an die Adobe Commerce-Version gebunden. Siehe PHP-.

Unterstützung von Erweiterungen

Für Pro-Projekte benötigen die folgenden Erweiterungen zusätzliche Unterstützung für die Installation:

  • ioncube
  • sourceguardian

Um beispielsweise PHP so einzurichten, dass nur SourceGuardian-geschützte Skripte in allen Umgebungen ausgeführt werden, muss die folgende Option in der php.ini-Datei festgelegt werden:

[SourceGuardian]
sourceguardian.restrict_unencoded = "1"

Siehe .5 der SourceGuardian-Dokumentation. Dies ist ein Link zu einer PDF.

Senden Sie ein Adobe Commerce Support Ticket um Hilfe bei der Installation dieser PHP-Erweiterungen in allen Produktionsumgebungen und Pro-Staging-Umgebungen zu erhalten. Fügen Sie Ihre aktualisierte .magento/services.yaml-Datei, .magento.app.yaml-Datei mit der aktualisierten PHP-Version und alle weiteren PHP-Erweiterungen ein. Bei Änderungen an einer Live-Produktionsumgebung müssen Sie mindestens 48 Stunden im Voraus angeben. Es kann bis zu 48 Stunden dauern, bis das Cloud-Infrastruktur-Team Ihr Projekt aktualisiert.

WARNING
PHP, das mit debug kompiliert wurde, wird nicht unterstützt und die Probe kann mit XDebug oder XHProf in Konflikt stehen. Deaktivieren Sie diese Erweiterungen, wenn Sie den Prüfpunkt aktivieren. Die Probe steht in Konflikt mit einigen PHP-Erweiterungen wie Pinba oder IonCube.
recommendation-more-help
7c2b03ac-000c-497d-aba3-2c6dc720a938