Un errore 502 viene solitamente visualizzato se un singolo processo PHP viene eseguito più a lungo del max_execution_time o max_input_time impostato nella configurazione di PHP, generando un timeout di PHP.

Per trovare la soluzione, bisogna prima individuare la causa dell’errore 502. Potrebbe essere necessario aumentare le risorse, regolare le impostazioni o, in alcuni casi, trovare un flusso di lavoro alternativo.

Ad esempio, se l’errore si verifica quando si sta provando ad effettuare un’importazione, un’alternativa consigliata è quella di eseguire l’importazione direttamente sul container, utilizzando WP-CLI o uno script PHP o Bash locale.

Individuare e Risolvere un Errore 502 Bad Gateway

Ci possono essere diverse cose da controllare e soluzioni da provare quando si cerca la causa di un errore 502 Bad Gateway.

CDN di Terze Parti

Se il vostro sito utilizza un CDN di terze parti oltre all’integrazione di Cloudflare di Kinsta, provate a disabilitare temporaneamente o bypassare quel CDN. Se il problema si risolve, dovrete regolare le impostazioni o contattare il supporto del provider CDN per vedere se un firewall o altre funzioni interferiscono con il vostro sito.

Log degli Errori

Controllate l’error.log del vostro sito in MyKinsta (o scaricatelo via SFTP) per restringere il campo nella ricerca della causa dell’errore. Se non c’è nulla di evidente, può essere utile attivare WP-DEBUG.

Analisi di MyKinsta

Cercate il report di suddivisione degli errori 500 in MyKinsta Analytics per vedere il numero totale di errori 502 e quando si verificano.

Plugin e Temi

Disattivate tutti i plugin e passate ad un tema predefinito. Se il problema si risolve, riattivate il tema e i plugin uno per uno, fino a quando il problema non si ripresenta. Una volta che avete individuato il plugin o stabilito che il tema è la causa dell’errore, invia una copia dell’errore allo sviluppatore del plugin o del tema in modo che possano aiutarvi a risolvere il problema.

Richiedere l’Aumento del Timeout PHP

Qui da Kinsta, i valori di max_execution_time o max_input_time sono impostati a 300 secondi (5 minuti) di default. I valori massimi di timeout PHP disponibili sono basati sul vostro attuale piano di hosting. Se avete bisogno di aumentarli, aprite una chat con il nostro team di supporto.

Aumentare il Numero di PHP Worker

In alcuni casi, potrebbero essere necessari più PHP worker. Se non siete sicuri, il nostro team di supporto può aiutarvi a stabilire se è necessario aggiungere altri PHP worker al vostro sito.