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 systeemvereisten voor alle ondersteunde versies van PHP.

Voor hulp bij de configuratie van de cloud raadpleegt u PHP-instellingen in de Handel in Cloud-infrastructuur hulplijn.

PHP Process Control

Voordat u indexen kunt uitvoeren in parallelle modus, moet u ondersteuning voor procesbesturing inschakelen (pcntl) in PHP. Zie Installatie in 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

B2B voor 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, set pcre.jit=0 in uw php.ini bestand. Dit komt rond een PHP buigen voorkomt dat CSS wordt geladen.
  • 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:

    • Compileren van code of het inzetten van statische activa, 1G
    • Foutopsporing, 2G
    • Testen; ~3-4G
  • De waarden voor PHP verhogen realpath_cache_size en realpath_cache_ttl aan 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 afstemmen in de PHP documentatie.

  • Inschakelen opcache.save_comments, die vereist is voor Adobe Commerce 2.1 en hoger.

    Adobe beveelt aan de PHP OPcache om prestatieredenen. 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.

Zoeken php.ini configuratiebestand

Als u de webserverconfiguratie wilt zoeken, voert u een phpinfo.php file in uw webbrowser en zoek naar 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, wijzigt u dat bestand. Als u twee php.ini bestanden, wijzigen beide bestanden. Als u dit niet doet, kunnen er onvoorspelbare prestaties optreden.

Configuratie-instellingen voor OPcache zoeken

PHP OPcache-instellingen bevinden zich doorgaans ook in php.ini of opcache.ini. De locatie kan afhankelijk zijn van uw besturingssysteem en PHP-versie. Het OPcache-configuratiebestand kan 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 de php.ini bestand.

    Voor CentOS met Apache of Nginx bevinden de OPcache-instellingen 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.inien wijzigt u ze allemaal.

PHP-opties instellen

PHP-opties instellen:

  1. Een php.ini in een teksteditor.

  2. Zoek de tijdzone van uw server in de beschikbare tijdzone-instellingen

  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. De waarde wijzigen van memory_limit op een van de aan het begin van deze sectie aanbevolen waarden.

    Bijvoorbeeld:

    code language-conf
    memory_limit=2G
    
  6. Voeg of werk de realpath_cache configuratie die 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. De andere openen php.ini (als ze anders zijn) en breng dezelfde wijzigingen aan.

Opties voor OPcache instellen

In te stellen opcache.ini opties:

  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. Zoeken opcache.save_comments en verwijder indien nodig de opmerkingen.

  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