Errori PHP
Quando l’applicazione è in esecuzione, si possono notare errori PHP nei log dell’applicazione o ci si può assicurare che gli script PHP non vengano eseguiti all’infinito a causa di richieste incomplete o in stallo. Questo articolo spiega come configurare le impostazioni di timeout e i limiti di memoria appropriati per garantire la stabilità, la sicurezza e le prestazioni ottimali dell’applicazione.
Limite di memoria
Il limite di memoria PHP predefinito sull’Hosting di Applicazioni è di 128MB per tutte le versioni di PHP. Se la vostra applicazione supera questo limite, potreste vedere un errore simile al seguente nei log dell’applicazione:
Rilevati 1047468200 Byte di RAM
Il limite di memoria PHP è di 128M Bytes
Per aumentare il limite di memoria dell’applicazione, creare un file .user.ini nella directory principale dell’applicazione e aggiungere l’impostazione del limite di memoria al file. Ad esempio, se si vuole aumentare il limite di memoria di PHP a 256 MB, aggiungere quanto segue:
memory_limit = 256M
Aumentare il Request Terminate Timeout
La direttiva request_terminate_timeout
per FastCGI Process Manager (FPM) determina il tempo massimo di esecuzione di uno script PHP prima che il server web lo termini forzatamente, indipendentemente dal fatto che lo script sia stato completato o meno.
Questo è utile per evitare che gli script PHP vengano eseguiti all’infinito, cosa che può accadere a causa di errori di codifica, loop infiniti o tempi di elaborazione eccessivi. Impostando un valore appropriato di request_terminate_timeout
, è possibile evitare che i processi PHP consumino eccessive risorse del server e possano influire sulle prestazioni generali e sulla stabilità del server.
Per modificare il valore di request_terminate_timeout:
- Creare un file chiamato fpm_custom.conf nella directory principale del repository e aggiungere il valore desiderato, ad esempio (l’unità di misura predefinita è secondi):
request_terminate_timeout = 120
- Applicare le modifiche al repository Git.
- All’interno di MyKinsta, selezionare l’Applicazione > Processi > modificare il processo Web > aggiornare il Comando Start per includere il file fpm_custom.conf, ad esempio:
heroku-php-apache2 -F fpm_custom.conf