WordPress e plugin di Redirect – Errore 404 del Server

Se stai usando WordPress e ti è capitato di spostarti da un dominio a un altro, o hai semplicemente cambiato gli URL per renderli più leggibili, facili da ricordare o semplicemente diversi, probabilmente non vuoi perdere il duro lavoro che hai fatto per ottenere l’indicizzazione dei motori di ricerca!

In questo caso, puoi utilizzare uno dei tanti plugin di WordPress per ottenere questo risultato, suggerirei Redirection by John Godley per la sua semplicità d’utilizzo, il fatto che è gratuito e le fantastiche funzionalità che fornisce, come l’importazione/esportazione tramite file JSON.

Non parlerò di come installarlo, come usarlo e nient’altro sul plugin, perché non è lo scopo dell’articolo e perché è anche semplicissimo.

Il Contesto

Vorrei invece mostrare cosa ho dovuto affrontare quando ho provato a reindirizzare i miei vecchi URL del sito a quelli nuovi. Consideriamo che sto usando lo stesso dominio, ma avevo un’installazione di Joomla in una sottocartella denominata /site/ e ora il mio WordPress è installato in una sottocartella denominata /wp/.

Ho dovuto reindirizzare URL di questo tipo:

https://texnostuff.com/site/nome-dell-articolo

in questo altro tipo di URL, dove si può notare anche l’indicazione della lingua:

https://texnostuff.com/wp/it/nome-dell-articolo-ma-un-po-più-curato

È stato semplicissimo con il plug-in Redirection by John Godley, ma in pratica non ho visto alcun risultato e ogni volta che scrivevo i vecchi URL nella barra degli indirizzi del browser, o verificavo il reindirizzamento direttamente tramite il plug-in, ricevevo una risposta 404:

Redirect issue shown by the Redirection plugin
Problema di reindirizzamento mostrato dal plugin Redirection.

La cosa che ha attirato la mia attenzione, è stata che la pagina di errore 404 non era quella fornita da WordPress, ma veniva fornita direttamente dal server web!

Il Problema

Grazie a questo e a dei test che ho fatto per trovare il problema, ho visto che se un URL non esistente puntava almeno all’interno della cartella /wp/, la pagina di errore 404 era fornita da WordPress, altrimenti direttamente dal Web Server.

La Soluzione

La soluzione è quella di intercettare tutti gli Errori 404 sul dominio http://texnostuff.com e reindirizzarli a WordPress. In questo modo, se l’URL richiesto è stato aggiunto al plugin Redirection viene gestito da quest’ultimo, altrimenti viene mostrata la Pagina di errore 404 di WordPress.

Come Applicare la soluzione

Accedi al server web in cui è installato WordPress e cerca il file .htaccess nella cartella root public_html:

Webserver dove WordPress è installato (all’interno di public_html/wp/ folder).

Apri il file .htaccess con un editor di testo e aggiungi le righe di codice sotto. Dato che sto usando cPanel, posso modificare il file direttamente online.

Codice da aggiungere al file .htaccess

Con queste righe di codice stiamo dicendo al server che, in caso di errore 404, dovrebbe cercare la pagina di errore nella cartella /wp/, e facendo ciò, la gestione dell’errore 404 è richiesta a WordPress e al plugin di reindirizzamento se configurato per farlo.

Verificare la Soluzione

Per confermare la risoluzione, torna al plug-in Redirection e verifica alcune delle regole di reindirizzamento che hai:

Doppio redirect: uno effettuato dal plugin Polylang e l’altro dovuto al plugin Redirection.
Singolo redirect dovuto al plugin Redirection.
Un redirect temporaneo (codice 307) dovuto al plugin Redirection.

lu122131

Luca Bortolotti Lentsch Engineer And Photographer From Lombardia Currently in Friuli Venezia Giulia #lu122131ph