Prima o poi, ogni sito web si imbatte in un bug o un errore difficile da risolvere. Spesso, questo accade perché l’errore stesso non vi fornisce molti dettagli. L’errore 429 Too Many Requests è un esempio di questi.

Per fortuna sappiamo quali sono le sue cause più comuni. Tuttavia, poiché esistono diversi potenziali colpevoli, spesso è necessario provare più di una soluzione prima di poterlo risolvere.

In questo articolo parleremo di ciò che provoca l’errore 429 Too Many Requests e di come si presenta. Dopodiché esamineremo cinque modi in cui potrete risolvere se il vostro sito si dovesse mai scontrare con questo particolare problema. Al lavoro!

Cos’è l’errore HTTP 429

L’errore HTTP 429 viene restituito quando un utente ha inviato troppe richieste in un breve periodo di tempo. Il codice 429 è inteso per l’uso con schemi di limitazione della velocità.

Cosa Causa l’Errore 429 Too Many Requests“

In alcuni casi, quando il server rileva che uno user agent sta tentando di accedere troppo spesso a una pagina specifica e in un breve periodo di tempo, viene attivata una funzione di limitazione della velocità. L’esempio più comune è quando un utente (o un utente malintenzionato) tenta ripetutamente di accedere al vostro sito.

Tuttavia, il vostro server potrebbe anche identificare gli utenti con i cookie piuttosto che con le loro credenziali di accesso. Le richieste possono anche essere conteggiate richiesta per richiesta, attraverso il vostro server o tra più server. Quindi ci sono diverse situazioni che potrebbero generare uno degli errori seguenti:

  • 429 Too Many Requests
  • 429 Error
  • HTTP 429
  • Error 429 (Too Many Requests)

L’errore può anche includere ulteriori dettagli riguardanti il ​​motivo del codice di stato 429, e anche quanto tempo l’utente deve attendere prima di tentare nuovamente l’accesso. Ecco un esempio di come potrebbe apparire:

HTTP/1.1 429 Too Many Requests
Content-type: text/html
Retry-After: 3600
<html>
<head>
<title>Too Many Requests</title>
</head>
<body>
<h1>Too Many Requests</h1>
<p>I only allow 50 requests per hour to this website per logged in user. Try again soon. </p>
</body>
</html>

Indipendentemente da come appare l’errore, il significato è sempre lo stesso: c’è un utente o uno snippet di codice che travolge il vostro server con troppe richieste. A volte, il problema può scomparire da solo. In altre situazioni, come quelle causate da problemi con un plugin o attacchi Denial of Service (DDoS), dovrete essere proattivi per risolvere l’errore.

Il problema è che l’errore 429 colpisce più spesso la pagina di accesso, il che può rendere impossibile l’accesso alla dashboard del vostro sito. Ciò può rendere il problema più complesso, ma è comunque risolvibile se sapete che soluzioni provare.

Come correggere l’errore 429 Too Many Requests (5 metodi)

Come potete immaginare, abbiamo a che fare con molte richieste di supporto di WordPress per via della natura dei servizi che offriamo. Ciò significa che abbiamo un’intima familiarità con l’errore 429 e le sue numerose potenziali cause.

Nelle sezioni seguenti, tratteremo cinque delle cause più comuni che abbiamo visto per l’errore 429 Too Many Requests in WordPress. Per ogni potenziale problema, vi insegneremo anche come risolverlo in modo da poter ripristinare rapidamente il vostro sito.

1. Modificare l’URL di Accesso Predefinito a WordPress

I tentativi di accesso con forza bruta (i cosiddetti brute-force attacks) sono una delle principali cause dell’errore 429 sui siti WordPress. Un modo rapido per impedire agli aggressori di tentare di sfondare la vostra pagina di accesso a WordPress è quello di cambiare il vostro URL dalle opzioni predefinite, così che prima di tutto non possa essere trovato.

Per impostazione predefinita, potete trovare la vostra pagina di accesso al sito visitando ilvostrosito.com/wp-admin. È abbastanza facile da ricordare, ma è anche molto insicuro poiché tutti sul web sapranno esattamente da dove accedere.

Il modo più semplice per modificare l’URL predefinito di WordPress è utilizzare il plugin gratuito WPS Hide Login:

WPS Hide Login
Il plugin WPS Hide Login

Vi guidiamo attraverso l’utilizzo di questo particolare strumento. Per prima cosa dovrete installare e attivare il plugin come fareste con qualsiasi altro, quindi andate sulla scheda Settings > WPS Hide Login nella vostra dashboard di WordPress:

Cambiare l'URL di login
Modificare l’URL di accesso

Qui potete facilmente modificare l’URL di accesso digitando qualsiasi estensione desideriate usare. Assicuratevi di non scegliere opzioni facili da indovinare come login, wp-login e così via. Ciò vanificherebbe innanzitutto l’obiettivo di modificare l’URL, quindi vi consigliamo di trovare qualcosa di unico per il vostro sito.

Tenete presente che questo plugin vi consente anche di reindirizzare gli utenti che provano ad accedere al vecchio URL di accesso a un’altra pagina. Ad esempio, l’opzione predefinita mostrerà a chiunque tenti di visitare l’URL /wp-admin una pagina di errore 404, quindi sapranno che stanno cercando nel posto sbagliato. Quando terminate, ricordatevi di salvare le modifiche alle impostazioni e sarete a posto.

2. Disabilitate il Plugin Really Simple SSL e Sostituite i Vostri Link Interni

Al giorno d’oggi, non c’è motivo per cui non dovreste avere impostato un certificato SSL (Secure Sockets Layer) per il vostro sito. Allo stesso tempo, l’intero sito dovrebbe caricare su HTTPS.
Questo è molto più sicuro rispetto all’utilizzo del vecchio protocollo HTTP e può persino avere un effetto positivo sull’Ottimizzazione del vostro sito per i motori di ricerca (SEO).

Quando si tratta di imporre l’uso di HTTPS, è possibile utilizzare il percorso manuale, ad esempio un reindirizzamento .htaccess o con un plugin. Una delle scelte più popolari è Really Simple SSL:

Really Simple SSL
Il plugin Really Simple SSL

Il fascino di questo plugin sta nel fatto che forza l’intero sito a caricarsi su HTTPS e con pochi semplici clic. Tuttavia, nella nostra esperienza, può anche generare bug occasionali. Ad esempio, in alcune circostanze, può innescare l’errore 429 di cui abbiamo parlato.

Non c’è nulla di intrinsecamente sbagliato in questo plugin, ma sicuramente non è il modo migliore per implementare l’uso del protocollo HTTPS. Il problema è che, anche implementando HTTPS manualmente, rimane comunque il problema di cosa fare con i link interni. È probabile che ci siano molti link interni nel vostro sito Web, quindi dovrete trovare un modo per sostituirli tutti con le loro versioni HTTPS, dopo aver disabilitato il plugin.

Innanzitutto, vi consigliamo di occuparvi del plugin stesso. Se avete accesso all’area di amministrazione di WordPress, disabilitare Really Simple SSL non dovrebbe essere un problema; basta premere Disattiva e il gioco è fatto:

Disattivare Really Simple SSL
Disattivare il plugin Really Simple SSL

Tuttavia, poiché l’errore 429 Too Many Requests spesso impedisce di accedere alla dashboard, potreste dover seguire il percorso manuale e disabilitare il plugin utilizzando un client FTP.
Ad ogni modo, una volta che il plugin Really Simple SSL è andato, l’errore 429 dovrebbe sparire. Ciò significa che potete accedere alla dashboard per configurare un nuovo plugin che vi aiuterà a sostituire tutti i vostri link interni in un colpo solo.
Quel plugin si chiama Search and Replace:

Search and Replace
Il plugin Search and Replace

Proseguite e attivate il plugin, quindi andate sulla scheda Tools > Search & Replace in WordPress. All’interno, selezionate la tabella wp_postmeta, quindi inserite i seguenti parametri nei rispettivi campi per Search for and Replace with:

Se il vostro sito usa un dominio non-www:

http://urldelvostrosito.com
https://urldelvostrosito.com

In alcuni casi, ci possono essere anche istanze www del vostro dominio nel database, quindi raccomandiamo di eseguire un altro “ricerca e sostituzione” con le impostazioni sottostanti.

http://www.urldelvostrosito.com
https://urldelvostrosito.com

Se il vostro sito usa un dominio www:
http://www.urldelvostrosito.com
https://www.urldelvostrosito.com

Per sostituire le istanze non-www del vostro dominio nel database, eseguite un altro “ricerca e sostituzione” con le impostazioni qui sotto:
http://www.urldelvostrosito.com
https://urldelvostrosito.com

Quindi selezionate l’opzione di prova, che vi indicherà quante istanze dei vostri URL in HTTP verranno sostituite dal plugin nel vostro database. Dopo la prova, eseguite il plugin per davvero, così sostituirete tutti i link necessari.

Tenete presente che dopo aver disabilitato Really Simple SSL, dovrete impostare un reindirizzamento HTTPS per tutto il sito usando il vostro file .htaccess. Ciò consente di implementare l’HTTPS in modo efficace, senza il rischio di incorrere in ulteriori errori 429.

3. Disattivate Temporaneamente Tutti i Vostri Plugin WordPress

Finora, ci siamo concentrati su un singolo plugin che potrebbe causare l’errore 429. Tuttavia, in pratica, qualsiasi plugin potrebbe causare questo problema se effettua troppe richieste esterne. Se nessuno dei due metodi precedenti vi è servito, potrebbe essere il momento di provare a disabilitare tutti i vostri plugin contemporaneamente, per assicurarvi che il problema non venga da uno di loro.

Per questa sezione, supponiamo che non abbiate accesso alla vostra dashboard e non possiate disabilitare i plugin nel solito modo. In tal caso, dovrete accedere al vostro sito tramite FTP utilizzando un client come Filezilla e cercare la cartella public_html/wp-content/.

All’interno, dovreste trovare diverse cartelle, una delle quali si chiama plugins:

Cartella Plugins
Cartella Plugins

Fate clic con il tasto destro su quella cartella e cambiatene il nome scegliendo qualcos’altro, come plugins.deactivated. Una volta fatto, WordPress non sarà in grado di “trovare” nessuno dei plugin e li disattiverà automaticamente. Tuttavia, prima di provare ad accedere nuovamente al vostro sito, andate avanti e create una nuova cartella vuota chiamata plugins, così WordPress continuerà a funzionare normalmente.
Se l’errore 429 scompare la prossima volta che visiti il vostro sito, potete presumere che uno dei plugin che avete disattivato sia il colpevole. Ciò significa che dovete restringere la ricerca al plugin che ha causato il problema. Per fare ciò, vi consigliamo di:

  1. Eliminare la cartella vuota plugins che avete creato un minuto fa, e ripristinare l’altra con il suo nome originale.
  2. Accedere alla cartella plugins.
  3. Rinominare la cartella di un plugin con un altro nome, cosa che disattiverà quello specifico plugin.
  4. Provare ad accedere al vostro sito e vedere se l’errore 429 è sparito.
  5. Se l’errore persiste, reimpostate il nome originale della cartella di quel plugin e ripetete i passi 3 e 4 con il plugin successivo.

Scorrendo l’elenco dei plugin attivi, dovreste scoprire quale di loro è il colpevole. Una volta capito quale plugin si trova dietro l’errore 429 Too Many Requests, potete eliminarlo del tutto, il che dovrebbe risolvere il problema.

4. Passate a un Tema WordPress Predefinito

Se vi rendete conto che ‘errore 429 non è causato da un plugin, è possibile che allora il colpevole sia il tema che state usando. Per capire se è così, potete disabilitare manualmente il tema attivo, forzando WordPress a passare a uno dei temi predefiniti forniti con il CMS.

Questo processo funziona in modo molto simile alla disabilitazione manuale dei plugin che abbiamo visto sopra. Dovrete riavviare il vostro fidato client FTP, e questa volta andare alla directory alla public_html/wp-content/themes. Una volta lì, cerca la cartella che corrisponde al tema attivo e rinominatela con un altro nome qualsiasi.
Se ora provate ad accedere al vostro sito, l’errore 429 Too Many Requests dovrebbe essere sparito. Noterete anche che tutto sembra un po’ diverso, ma non fatevi prendere dal panico: il vostro tema e tutte le sue personalizzazioni sono ancora lì.

Tutto quello che dovete fare è riportare la cartella del tema al suo nome originale così da attivarla di nuovo. Se l’errore 429 si ripresenta, potrebbe essere necessario contattare chi ha sviluppato il tema o considerare un cambio del tema del vostro sito e alla fine lo cancelliamo.

5. Contattate l’Host Se Non Riuscite Ancora a Risolvere l’Errore

In alcuni casi, è possibile che la causa dell’errore 429 sia originata dal vostro server piuttosto che dal vostro sito web. Se questo è il vostro caso, nessun intervento da parte vostra sarà in grado di risolvere completamente il problema.

Ad esempio, alcuni host web bloccheranno le richieste da specifici servizi o piattaforme di terze parti. Questi possono includere motori di ricerca, crawler e altre app (come Google Search Console) che tende a inviare un gran numero di richieste al vostro sito.

Contattare il fornitore di hosting e chiedergli di consentire queste richieste può risolvere il problema. Inoltre, anche se le limitazioni poste sul vostro server da parte dell’host non fossero la causa del problema, potreste ricevere preziose informazioni e consigli che vi saranno d’aiuto a trovare la soluzione corretta.

Sommario

Incontrare un errore sul nostro sito è sempre frustrante. Tuttavia, per quanto riguarda gli errori, quelli con codici numerici almeno danno abbastanza informazioni per iniziare a risolverli. Se incontrate l’errore 429 Too Many Requests, saprete che qualcosa sta travolgendo il vostro server con troppe richieste, quindi è solo una questione di identificare l’origine del problema.

Se si verifica l’errore 429, ecco cinque modi in cui è possibile risolverlo:

    1. Modificate l’URL di accesso di WordPress predefinito.
    2. Disabilitate il plugin Really Simple SSL.
    3. Disattivate temporaneamente tutti i plugin di WordPress.
    4. Passate a un tema WordPress predefinito.
    5. Contattate il vostro host se non riuscite ancora a risolvere l’errore.

Avete domande su come correggere l’errore 429 Too Many Requests in WordPress? Parliamone nella sezione commenti qui sotto!