Fel i PHP-inställningar
Den här artikeln innehåller lösningar på PHP-inställningsfel.
PHP-minnesbegränsningsfel
Med beredskapskontrollerna ser du till att du har minst 1 GB minne reserverat för PHP-processer. Den här inställningen bör vara tillräcklig för de flesta installationer, inklusive installation av valfria exempeldata. Vi rekommenderar dock minst 2 GB för felsökning.
Så här ökar du PHP-minnesgränsen:
-
Logga in på din Adobe Commerce-server.
-
Leta reda på filen
php.ini
med följande kommando:code language-none bash $ php --ini
-
Som användare med behörigheten
root
använder du en textredigerare för att öppnaphp.ini
som anges avLoaded Configuration File
. -
Sök efter
memory_limit
. -
Ändra det till värdet
2GB
för normal användning och felsökning. -
Spara ändringarna i
php.ini
och avsluta textredigeraren. -
Starta om webbservern. Exempel:
- CentOS:
service httpd restart
- Ubuntu:
service apache2 restart
- nginx (både CentOS och Ubuntu):
service nginx restart
- CentOS:
-
Försök installera igen.
max-input-vars-fel på grund av stora formulär
Konfigurationer med ett stort antal butiksgranskningar, produkter, attribut och alternativ kan generera formulär som överskrider den förinställda PHP-gränsen. Om antalet skickade värden överstiger gränsen på max-input-vars
som angetts inom php.ini
(standardvärdet är 1000) överförs inte återstående data och dessa databasvärden uppdateras inte. När detta inträffar visas en varning i PHP-loggen:
PHP message: PHP Warning: Unknown: Input variables exceeded 1000. To increase the limit change max_input_vars in php.ini.
Det finns inget "riktigt"-värde för max-input-vars
. Det beror på konfigurationens storlek och komplexitet. Ändra värdet i filen php.ini
efter behov. Se Nödvändiga PHP-inställningar.
xdebug maximum function nesting level error
Se Under installationen kan du felsöka högsta antal funktionsfel på kapslingsnivån.
Fel visas när du öppnar en PHTML-mall
Feltexten är vanligtvis:
Parse error: syntax error, unexpected 'data' (T_STRING)
Lösning: Ange asp_tags = off
i php.ini
Flera mallar har syntax för att ge stöd för abstrakt nivå på mallar (använd olika mallmotorer som Twig) som är inkapslade i <% %>
-taggar, som den här mallen för att visa en produktbild:
<img
class="product-image"
src="<%- data.url %>"
data-position="<%- data.position %>"
alt="<%- data.label %>" />
Mer information om asp_tags.
Redigera php.ini
och ange asp_tags = off
. Mer information finns i Nödvändiga PHP-inställningar.