PHP-instellingen

In dit onderwerp wordt besproken hoe u vereiste PHP-opties kunt instellen.

NOTE
Voor de nieuwste versie van Adobe Commerce is minimaal PHP 8.1 vereist. Zie systeemvereistenvoor alle gesteunde versies van PHP.

Voor de configuratiebegeleiding van de Wolk, zie PHP montagesin Commerce op de gids van de Infrastructuur van de Wolk.

PHP Process Control

Voordat u indexeerders in parallelle modus kunt uitvoeren, moet u ondersteuning voor procesbesturing (pcntl) inschakelen in PHP. Zie Installatiein de PHP documentatie.

Controleren of PHP is geïnstalleerd

PHP is standaard geïnstalleerd op de meeste Linux distributies. In dit onderwerp wordt ervan uitgegaan dat u PHP al hebt geïnstalleerd. Om te controleren of PHP is geïnstalleerd, voert u het volgende in op de opdrachtregel:

php -v

Als PHP is geïnstalleerd, wordt een bericht weergegeven dat lijkt op het volgende:

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

Als PHP niet is geïnstalleerd (of een upgrade nodig heeft), installeert u het door de instructies voor de Linux-distributie te volgen.

Geïnstalleerde extensies verifiëren

Adobe Commerce vereist bepaalde PHP extensies. In de volgende lijsten worden de vereiste extensies voor elke editie van Commerce opgegeven. De lijsten worden automatisch geproduceerd van een plaatsing die de recentste versie van elke uitgave in werking stelt.

Adobe Commerce vereist:

  • 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 vereist:

  • 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

Geïnstalleerde extensies controleren:

  1. Geïnstalleerde modules weergeven.

    code language-bash
    php -m
    
  2. Controleer of alle vereiste extensies zijn geïnstalleerd.

  3. Voeg ontbrekende modules toe aan de hand van dezelfde workflow die gebruikt wordt voor de installatie van PHP.

PHP-instellingen controleren

WARNING
Als u PHP 7.4.20 gebruikt, stelt u pcre.jit=0 in in uw php.ini -bestand. Dit krijgt rond een PHP insectdat CSS verhindert te laden.
  • Stel de tijdzone van het systeem in voor PHP. Anders werken fouten zoals de volgende weergave tijdens de installatie en bewerkingen met betrekking tot tijd zoals cron mogelijk niet:
PHP Warning:  date(): It is not safe to rely on the system's timezone settings. [more messages follow]
  • Stel de PHP-geheugenlimiet in.

    Adobe beveelt het volgende aan:

    • Code compileren of statische elementen implementeren, 1G
    • Foutopsporing, 2G
    • Testen, ~3-4G
  • Verhoog de waarden voor PHP realpath_cache_size en realpath_cache_ttl tot de aanbevolen instellingen:

    code language-conf
    realpath_cache_size=10M
    realpath_cache_ttl=7200
    

    Met deze instellingen kunnen PHP-processen paden naar bestanden in cache plaatsen in plaats van ze te bekijken bij het laden van de pagina. Zie Prestaties diein de PHP documentatie stempelen.

  • Schakel opcache.save_commentsin. Dit is vereist voor Adobe Commerce 2.1 en hoger.

    De Adobe adviseert toelatend PHP OPcachevoor prestatiesredenen. De OPcache is in veel PHP distributies ingeschakeld.

    Adobe Commerce 2.1 en hoger gebruiken PHP-codeopmerkingen voor het genereren van code.

NOTE
Om problemen tijdens installatie en verbetering te vermijden, adviseert de Adobe sterk dat u de zelfde montages PHP op zowel de PHP bevel-lijn configuratie als de PHP configuratie van de Webserver stop - in configuratie toepast. Zie de volgende sectie voor meer informatie.

PHP-configuratiebestanden zoeken

In deze sectie wordt beschreven hoe u de configuratiebestanden vindt die nodig zijn om de vereiste instellingen bij te werken.

Configuratiebestand php.ini zoeken

Als u de webserverconfiguratie wilt zoeken, voert u een phpinfo.php bestandin uw webbrowser uit en zoekt u de Loaded Configuration File als volgt:

PHP- infopagina

Als u de PHP opdrachtregelconfiguratie wilt zoeken, typt u

php --ini | grep "Loaded Configuration File"
NOTE
Als u slechts één php.ini -bestand hebt, wijzigt u dat bestand. Als u twee php.ini dossiers hebt, verander allebei dossiers. Als u dit niet doet, kunnen er onvoorspelbare prestaties optreden.

Configuratie-instellingen voor OPcache zoeken

PHP OPcache-instellingen bevinden zich doorgaans in php.ini of opcache.ini . De locatie kan afhankelijk zijn van uw besturingssysteem en PHP-versie. Het OPcache-configuratiebestand heeft mogelijk een opcache -sectie of instellingen, zoals opcache.enable .

Gebruik de volgende richtlijnen om het te vinden:

  • Apache-webserver:

    Voor Ubuntu met Apache bevinden de OPcache-instellingen zich doorgaans in het php.ini -bestand.

    Voor CentOS met Apache of nginx bevinden de instellingen voor OPcache zich doorgaans in /etc/php.d/opcache.ini

    Als niet, gebruik het volgende bevel om van het de plaats te bepalen:

    code language-bash
    sudo find / -name 'opcache.ini'
    
  • nginx-webserver met PHP-FPM: /etc/php/8.1/fpm/php.ini

Als u meer dan één opcache.ini hebt, wijzigt u ze allemaal.

PHP-opties instellen

PHP-opties instellen:

  1. Open een php.ini in een teksteditor.

  2. Bepaal de plaats van de tijdzone van uw server in de beschikbare montages van de tijdzone

  3. Zoek de volgende instelling en verwijder indien nodig de commentaarmarkering:

    code language-conf
    date.timezone =
    
  4. Voeg de tijdzone-instelling toe die u in stap 2 hebt gevonden.

  5. Wijzig de waarde van memory_limit in een van de waarden die aan het begin van deze sectie worden aanbevolen.

    Bijvoorbeeld:

    code language-conf
    memory_limit=2G
    
  6. Voeg de configuratie van realpath_cache toe of werk deze bij zodat deze overeenkomt met de volgende waarden:

    code language-conf
    ;
    ; Increase realpath cache size
    ;
    realpath_cache_size = 10M
    
    ;
    ; Increase realpath cache ttl
    ;
    realpath_cache_ttl = 7200
    
  7. Sla de wijzigingen op en sluit de teksteditor af.

  8. Open de andere php.ini (als deze verschillend zijn) en breng dezelfde wijzigingen aan.

Opties voor OPcache instellen

U stelt opcache.ini -opties als volgt in:

  1. Open het OPcache-configuratiebestand in een teksteditor:

    • opcache.ini (CentOS)
    • php.ini (Ubuntu)
    • /etc/php/8.1/fpm/php.ini (nginx-webserver (CentOS of Ubuntu))
  2. Zoek opcache.save_comments en verwijder indien nodig de commentaarmarkering.

  3. Controleer of de waarde is ingesteld op 1 .

  4. Sla de wijzigingen op en sluit de teksteditor af.

  5. Start de webserver opnieuw:

    • Apache, Ubuntu: service apache2 restart
    • Apache, CentOS: service httpd restart
    • nginx, Ubuntu en CentOS: service nginx restart

Problemen oplossen

Raadpleeg de volgende Adobe Commerce Support-artikelen voor hulp bij het oplossen van problemen met PHP:

recommendation-more-help
0f8e7db5-0e9c-4002-a5b8-a0088077d995