Come risolvere gli errori più comuni del server di WooCommerce quando si importano i dati su Clerk.io

Guarda come far funzionare Data Sync se il tuo server ti restituisce un errore

Quando si importano i dati con il plugin WooCommerce di Clerk.io, il server del webshop è responsabile dell'invio dei dati delle categorie dei prodotti e delle vendite a Clerk.io.

Tuttavia in alcuni casi, la configurazione del server potrebbe impedire l'accesso all'importazione, causando un errore in Data Sync.

Di seguito è riportato un elenco degli errori più comuni e come risolverli.

401 Server Error: Unauthorized

Questo errore si verifica se il tuo webshop/ambiente di sviluppo richiede l'autenticazione HTTP per accedervi.

Si risolve semplicemente inserendo Username e Password come parte dell'URL di importazione:

http://username:password@woocommerce.clerk.io

403 Server Error: Forbidden

Questo errore si verifica se il tuo server blocca l'accesso all'importatore. Nella maggior parte dei casi hai semplicemente bisogno di inserire nella whitelist l'indirizzo IP dell'importatore per dargli accesso.

L'ultimo indirizzo IP può essere trovato qui.

404 Server Error: Not Found 

Questo errore accade se l'importatore non può accedere al link che ci invia i dati dal webshop. Nella maggior parte dei casi accade perché il plugin è o:
  • Non è installato affatto
  • Una cache fa sì che il link non venga inizializzato
  • I permalink di WooCommerce sono impostati su Post name invece che su Month and name
Per prima cosa assicurati di aver installato correttamente il plugin.
Poi, assicurati di svuotare la cache del vostro negozio web prima di provare una nuova importazione.

Se ancora non si sincronizza correttamente, vai in Settings => Permalinks e cambia le impostazioni comuni in Month and name e premi Save:

429 Server Error: Too Many Requests

Questo errore si verifica se il tuo server nega l'accesso all'importatore a causa di troppe richieste in entrata. 

Potete risolvere questo problema impostando il limite di richieste più alto, per il vostro server o impostando Page Size ad un valore più alto nel Clerk.io importer, facendo sì che l'importatore faccia meno richieste e più grandi:

Se stai usando l'host provider Byte.nl, l'importatore di solito restituisce questo errore a causa del loro limitatore di velocità. In questo caso, contatta semplicemente Byte.nl  e chiedi loro di inserire nella whitelist l'importatore User-Agent "clerk".

500 Internal Server Error

Questo errore significa che il tuo server ha incontrato un errore interno e non è stato in grado di specificare quale errore si è verificato.

In questi casi puoi controllare il tuo Server Log per identificare quale processo si è bloccato e perché. Nella maggior parte dei casi è semplicemente a causa di un prodotto con un attributo non valido, o una funzione chiamata in modo errato nel webshop.

Un esempio di tale errore potrebbe verificarsi una volta che si aggiorna sia WooCommerce che Klarna. In questo caso, il problema è creato dal plugin 'woocommerce-gateway-klarna' che non si aggiorna. 

Se questo accade a voi andare a
woocommerce-gateway-klarna ->includes->variables-checkout.php. 

Look for:

if ( ! is_admin() && ! empty( $klarna_country )) {

and change it to: 

if ( ! is_admin() && ! empty( $klarna_country ) && WC()->session ) {

503 Server Error: Service Unavailable 

Questo errore è di solito temporaneo, ed è causato dal fatto che il server è troppo occupato per gestire la richiesta. Riprova un po' più tardi.

Se il problema continua a verificarsi, potrebbe significare che il server è sovraccarico di processi ed è vicino alla capacità massima.

Controlla il carico del server, per identificare se questo è il caso. 

Invalid response returned from the WooCommerce API

Questo errore di solito si verifica se il Debugging di WooCommerce è stato attivato. Non è mai una buona idea averlo attivato su una configurazione live perché rallenta le pagine e potenzialmente mostra messaggi di errore nel frontend.

Il problema di sincronizzazione si verifica se WooCommerce incontra un errore durante la generazione dei dati prodotto per l'importazione. 

Questo può essere risolto disattivando il Debugging in wp-config.php impostando define(WP_DEBUG', false). 

Questa guida lo spiega in modo più dettagliato:
https://docs.woocommerce.com/document/woocommerce-product-search/api/debugging/

E questa guida spiega un workaround alternativo:
https://aristath.github.io/blog/wp-hide-php-errors

Gli errori saranno ancora registrati anche quando non sono in modalità Debug, ma saranno invece registrati in un file.