PHP-Einstellungen
In diesem Thema wird beschrieben, wie Sie die erforderlichen PHP-Optionen festlegen.
Eine Anleitung zur Cloud-Konfiguration finden Sie unter PHP-Einstellungen im Handbuch Commerce on Cloud Infrastructure .
PHP Process Control
Bevor Sie Indexer im Parallelmodus ausführen können, müssen Sie die Unterstützung der Prozesssteuerung (pcntl
) in PHP aktivieren. Siehe Installation in der PHP-Dokumentation.
Überprüfen, ob PHP installiert ist
PHP wird standardmäßig auf den meisten Linux-Distributionen installiert. Dieses Thema setzt voraus, dass Sie PHP bereits installiert haben. Um zu überprüfen, ob PHP installiert ist, geben Sie Folgendes in die Befehlszeile ein:
php -v
Wenn PHP installiert ist, wird eine ähnliche Meldung wie die folgende angezeigt:
PHP 8.1.2-1ubuntu2.14 (cli) (built: Aug 18 2023 11:41:11) (NTS)
Copyright (c) The PHP Group
Zend Engine v4.1.2, Copyright (c) Zend Technologies
with Zend OPcache v8.1.2-1ubuntu2.14, Copyright (c), by Zend Technologies
Wenn PHP nicht installiert ist (oder ein Upgrade erforderlich ist), installieren Sie es, indem Sie die Anweisungen für Ihre Linux-Distribution befolgen.
Überprüfen installierter Erweiterungen
Adobe Commerce erfordert bestimmte PHP-Erweiterungen. In den folgenden Listen werden die erforderlichen Erweiterungen für jede Version von Commerce aufgeführt. Die Listen werden von einer Bereitstellung automatisch generiert, bei der die neueste Version jeder Edition ausgeführt wird.
Adobe Commerce erfordert:
ext-bcmath
ext-ctype
ext-curl
ext-dom
ext-fileinfo
ext-filter
ext-gd
ext-hash
ext-iconv
ext-intl
ext-json
ext-libxml
ext-mbstring
ext-openssl
ext-pcre
ext-pdo_mysql
ext-simplexml
ext-soap
ext-sockets
ext-sodium
ext-spl
ext-tokenizer
ext-xmlwriter
ext-xsl
ext-zip
ext-zlib
lib-libxml
Magento Open Source erfordert:
ext-bcmath
ext-ctype
ext-curl
ext-dom
ext-fileinfo
ext-filter
ext-gd
ext-hash
ext-iconv
ext-intl
ext-json
ext-libxml
ext-mbstring
ext-openssl
ext-pcre
ext-pdo_mysql
ext-simplexml
ext-soap
ext-sockets
ext-sodium
ext-tokenizer
ext-xmlwriter
ext-xsl
ext-zip
ext-zlib
lib-libxml
Überprüfen installierter Erweiterungen:
-
Liste installierter Module.
code language-bash php -m
-
Stellen Sie sicher, dass alle erforderlichen Erweiterungen installiert sind.
-
Fügen Sie alle fehlenden Module mit dem gleichen Workflow hinzu, der für die Installation von PHP verwendet wird.
Überprüfen der PHP-Einstellungen
pcre.jit=0
in Ihrer php.ini
-Datei. Dadurch wird ein PHP bug umgangen, der verhindert, dass CSS geladen wird.- Legen Sie die Systemzeitzone für PHP fest. Andernfalls funktionieren Fehler wie die folgende Anzeige während der Installation und zeitbezogene Vorgänge wie Cron möglicherweise nicht:
PHP Warning: date(): It is not safe to rely on the system's timezone settings. [more messages follow]
-
Setzen Sie das PHP-Speicherlimit.
Adobe empfiehlt Folgendes:
- Kompilieren von Code oder Bereitstellen von statischen Assets,
1G
- Debugging,
2G
- Test,
~3-4G
- Kompilieren von Code oder Bereitstellen von statischen Assets,
-
Erhöhen Sie die Werte für PHP
realpath_cache_size
undrealpath_cache_ttl
auf empfohlene Einstellungen:code language-conf realpath_cache_size=10M realpath_cache_ttl=7200
Diese Einstellungen ermöglichen es PHP-Prozessen, Pfade zu Dateien zwischenzuspeichern, anstatt sie beim Laden der Seite zu suchen. Siehe Leistungsoptimierung in der PHP-Dokumentation.
-
Aktivieren Sie
opcache.save_comments
, was für Adobe Commerce 2.1 und höher erforderlich ist.Adobe empfiehlt aus Leistungsgründen die Aktivierung des PHP OPcache. Der OPcache ist in vielen PHP-Distributionen aktiviert.
Adobe Commerce 2.1 und höher verwenden PHP-Code-Kommentare zur Codegenerierung.
PHP-Konfigurationsdateien suchen
In diesem Abschnitt wird beschrieben, wie Sie die Konfigurationsdateien finden, die zum Aktualisieren der erforderlichen Einstellungen erforderlich sind.
Suchen Sie die Konfigurationsdatei php.ini
.
Um die Webserverkonfiguration zu finden, führen Sie eine phpinfo.php
-Datei in Ihrem Webbrowser aus und suchen Sie nach dem Loaded Configuration File
wie folgt:
Um die PHP-Befehlszeilenkonfiguration zu finden, geben Sie
php --ini | grep "Loaded Configuration File"
php.ini
-Datei haben, ändern Sie diese Datei. Wenn Sie zwei php.ini
-Dateien haben, ändern Sie die beide -Dateien. Andernfalls kann die Leistung unvorhersehbar sein.OPcache-Konfigurationseinstellungen suchen
PHP OPcache-Einstellungen befinden sich normalerweise entweder in php.ini
oder in opcache.ini
. Der Speicherort kann von Ihrem Betriebssystem und Ihrer PHP-Version abhängen. Die OPcache-Konfigurationsdatei kann einen Abschnitt "opcache
" oder Einstellungen wie "opcache.enable
" enthalten.
Verwenden Sie die folgenden Richtlinien, um sie zu finden:
-
Apache-Webserver:
Bei Ubuntu mit Apache befinden sich die OPcache-Einstellungen normalerweise in der Datei
php.ini
.Bei CentOS mit Apache oder nginx befinden sich die OPcache-Einstellungen normalerweise in
/etc/php.d/opcache.ini
Wenn nicht, suchen Sie mit dem folgenden Befehl:
code language-bash sudo find / -name 'opcache.ini'
-
nginx-Webserver mit PHP-FPM:
/etc/php/8.1/fpm/php.ini
Wenn Sie mehr als einen opcache.ini
haben, ändern Sie alle.
Festlegen von PHP-Optionen
Festlegen von PHP-Optionen:
-
Öffnen Sie eine
php.ini
in einem Texteditor. -
Suchen Sie die Zeitzone Ihres Servers in den verfügbaren Zeitzoneneinstellungen .
-
Suchen Sie die folgende Einstellung und heben Sie die Auskommentierung auf, falls erforderlich:
code language-conf date.timezone =
-
Fügen Sie die Zeitzoneneinstellung hinzu, die Sie in Schritt 2 gefunden haben.
-
Ändern Sie den Wert von
memory_limit
in einen der am Anfang dieses Abschnitts empfohlenen Werte.Beispiel:
code language-conf memory_limit=2G
-
Fügen Sie die
realpath_cache
-Konfiguration hinzu oder aktualisieren Sie sie, sodass sie den folgenden Werten entspricht:code language-conf ; ; Increase realpath cache size ; realpath_cache_size = 10M ; ; Increase realpath cache ttl ; realpath_cache_ttl = 7200
-
Speichern Sie Ihre Änderungen und beenden Sie den Texteditor.
-
Öffnen Sie die anderen
php.ini
(sofern sie unterschiedlich sind) und nehmen Sie die gleichen Änderungen daran vor.
OPcache-Optionen festlegen
So legen Sie opcache.ini
-Optionen fest:
-
Öffnen Sie die OPcache-Konfigurationsdatei in einem Texteditor:
opcache.ini
(CentOS)php.ini
(Ubuntu)/etc/php/8.1/fpm/php.ini
(nginx-Webserver (CentOS oder Ubuntu)
-
Suchen Sie
opcache.save_comments
und heben Sie die Auskommentierung auf, falls erforderlich. -
Stellen Sie sicher, dass der Wert auf
1
eingestellt ist. -
Speichern Sie Ihre Änderungen und beenden Sie den Texteditor.
-
Starten Sie den Webserver neu:
- Apache, Ubuntu:
service apache2 restart
- Apache, CentOS:
service httpd restart
- nginx, Ubuntu und CentOS:
service nginx restart
- Apache, Ubuntu:
Fehlerbehebung
In den folgenden Adobe Commerce-Supportartikeln finden Sie Hilfe zur Fehlerbehebung bei PHP-Problemen: