cliccando.it

Plesk 502 bad gateway nginx soluzione

Plesk 502 Bad Gateway nginx

Questa mattina mi sono svegliato con una bella sorpresa. Il sito mostrava in tutte le sue pagine l’errore di Plesk 502 Bad Gateway nginx. E io stavo dormendo, quindi di certo non era colpa mia, non avevo toccato nulla 🙂 . Devo ammettere che questo problema mi si era già presentato prima, ma le volte precedenti lo avevo risolto in modo diverso dall’ultima. Così ho deciso di scrivere un articolo per aiutare tutti coloro che hanno avuto questo problema, elencando i modi  in cui sono riuscito a risolverlo.

Iniziamo col dire innanzitutto che la problematica si presenta se state utilizzando Plesk, e molto probabilmente, se state utilizzando nginx come reverse proxy verso apache.

Plesk 502 bad gateway nginx soluzione

Per capire se state utilizzando nginx come reverse proxy, sarà sufficiente lanciare il seguente comando sul vostro server Plesk:

/usr/local/psa/admin/sbin/nginxmng -s

Questo comando dovrebbe restituire Enabled o Disabled.

Se la risposta è Enabled, allora si, state utilizzando (magari a vostra insaputa 🙂 , ma è un bene ) nginx come proxy.

La prima volta che mi si è presentato questo problema non sapevo proprio dove andare a mettere le mani. Così come tutti noi facciamo ( e come probabilmente hai fatto tu per arrivare su questa pagina 🙂 ) ho iniziato a cercare su internet, ma senza trovare nulla. Ci ho messo un po di logica e ho iniziato a investigare. Innanzitutto era logico che il problema fosse nginx. Così mi sono chiesto se disattivandolo (come servizio di reverse proxy) il problema potesse risolversi.

Come attivare e disattivare nginx su Plesk

Questo è stato semplice. Con un semplice comando è stato semplicissimo disattivare nginx:

/usr/local/psa/admin/sbin/nginxmng -d

E se ora riproviamo cosa succede? …. WOW … PROBLEMA RISOLTO ????? NO. Il problema per ora è stato soltanto aggirato. Il vostro sito infatti ora probabilmente sarà di nuovo raggiungibile e non vedremo più il brutto errore 502 bad gateway nginx. Ma ora dovremmo riportare la situazione allo stato precedente, quando funzionava tutto alla perfezione.  Non ci credi? Prova a riattivare nginx:

Abilitare nginx su Plesk

/usr/local/psa/admin/sbin/nginxmng -e

Cosa succede? Ooooops … il 502 bad gateway è tornato. Disattiviamolo nuovamente ( /usr/local/psa/admin/sbin/nginxmng -d ) per far tornare nuovamente il sito raggiungibile e vediamo come procedere.

Disabilitare nginx su Plesk

uninstall nginx from plesk

La prima volta che il problema che si presentò, risolsi il problema in modo molto semplice quanto brutale. Fu sufficiente accedere al mio server plesk (https://mioserver:8443), loggarmi e cliccare su Tools & Settings -> Updates and Upgrades e poi, sulla nuova pagina, scegliere Add/Remove Product Components. A questo punto, sotto Webserver cercare Nginx web server and reverse proxy server e premere la freccia verso il basso e premere REMOVE (ATTENZIONE, PROCEDETE CON LA RIMOZIONE SOLO ED ESCLUSIVAMENTE SE AVETE ACCESSO IN SSH AL VOSTRO SERVER O RISCHIERETE DI NON RIUSCIRE A REISTALLARE NGINX).

Attendere il ri-caricamento delle pagina ed eseguire il processo inverso per reistallare nginx.

Istallare nginx su Plesk via command line

In alcuni casi il processo di reistallazione ha dato dei problemi, in quanto dopo aver rimosso nginx, la pagina di Updates and Upgrades (porta 8447 del server) non partiva. Per aggirare il problema sarà sufficiente accedere al server in ssh e lanciare il comando:

/usr/local/psa/admin/sbin/autoinstaller

Con questo comando, sarà sufficiente seguire la procedura guidata via CLI (Command Line Interface) per reistallare nginx.

La prima volta che mi si è presentato il problema, questa procedura mi ha aiutato a risolvere. Dopo la reistallazione, il problema era scomparso e tutto ha ricominciato a funzionare. Ma l’ultima volta NO.

Ultima soluzione

Dopo aver proceduto alla reistallazione il problema non era affatto risolto avevo ancora l’errore Plesk 502 bad gateway nginx .

Mi sono poi ricordato di aver avere attivo il servizio fail2ban. Mi è così venuto il dubbio che il problema potesse essere proprio li, visto che il nostro server funziona come un client quando il servizio di proxy è attivo. Accediamo alla console di amministrazione del nostro server sulla porta 8443 e clicchiamo su Tools & Setting -> IP Address Banning (Fail2Ban) e verifichiamo se l’IP del nostro server è presente nella lista degli IP bannati (Banned IP Addresses).

Nel caso in cui fosse presente, procediamo immediatamente alla sua rimozione dalla lista, selezionandolo e premendo il tasto Unban. In questo modo il nostro problema dovrebbe essere risolto. Ma non definitivamente.

Prevenire il problema Plesk 502 Bad Gateway nginx

Ora però dobbiamo fare in modo che il problema non si ripresenti. Se effettivamente l’IP del vostro server era in blacklist, provvediamo ad inserirlo in whitelist. In questo modo, potrà fare tutte le chiamate client che vuole (quello che fa quando si comporta da proxy) senza finire nuovamente in blacklist. Suggerirei di aggiungere in whitelist di fail2ban anche localhost e 127.0.0.1 .

Considerazioni finali

Quando il vostro IP finisce in blacklist, il client non riceve una risposta e ottiene l’errore 502. Questo errore diventa un 503 se usate una CDN come CloudFlare.  Questo vi mette al sicuro, dal punto di vista SEO, per 3 o 4 ore nel caso in cui, nel momento in cui siete in disservizio, venga a visitarvi il crawler di un motore di ricerca. Ma un disservizio che dovesse prolungarsi oltre le 4 ore, potrebbe inficiare le performance SEO del vostro sito.

Visto che non sempre i proprietari o i gestori di un sito stanno a guardare la propria homepage, quello che posso suggerire, per accorgersi il prima possibile del problema, è di monitorare il proprio sito con dei servizi di monitoraggio (ce ne sono molti gratuiti) con UPTIMEROBOT (io uso questo). Servizi come questo, tramite un’app istallata sul vostro smartphone, vi avviseranno immediatamente nel caso in cui il vostro server risponda con un codice di risposta diverso da 200. In questo modo potrete intervenire tempestivamente ed evitare penalizzazioni SEO.

In bocca al lupo e buon lavoro

Exit mobile version