SSL Insecure Content Fixer e trailing slash

di | 16 Luglio 2019

Le direttive per aggiungere sempre lo slash finale agli URL potrebbero impedire il funzionamento del plugin di WordPress

Come si può percepire da questo tweet, non è stato un divertimento. Piuttosto un sollievo quando ho scoperto la causa degli errori, ma fino ad allora è stata una caccia al tesoro, proprio come tante altre volte.

Mentre stavo ultimando il setup per questo sito mi sono imbattuto in un problema che, sebbene abbia risolto, non ne ho compreso bene il motivo che lo scatenava.
Questo sito utilizza sempre il protocollo HTTPS, oramai diventato requisito minimo per la navigazione sul web; quindi ho attivato HTTPS sul mio host. Fin qui tutto bene.

WordPress però, a quanto ho capito, dà un po’ di problemi di mixed content in quanto effettua alcune richieste asincrone a script utilizzando HTTP. Per esempio, le chiamate per il salvataggio delle modifiche o la creazione di un articolo.

Mixed Content: the page at ‘https://lorenzovainigli.altervista.org/path/to/one’ was loaded over HTTPS, but request an insecure XMLHttpRequest endpoint ‘https://lorenzovainigli.altervista.org/path/to/two’. This request has been blocked; the content must be served over HTTPS.

Tale problema si risolve tranquillamente con il plugin SSL Insecure Content Fixer, che pensa da solo a trovare tutte le richieste insicure HTTP e sostituirle con HTTPS.
Ma io avevo qualcosa di troppo nel mio file .htaccess.

Attenzione al trailing slash con SSL Insecure Content Fixer

Il mio file .htaccess conteneva le seguenti righe:

RewriteCond %{REQUEST_URI} !(/$|\.) 
RewriteRule (.*) %{REQUEST_URI}/ [R=301,L]

Non ho idea del perché, ma queste direttive intralciavano la riscrittura con protocollo sicuro HTTPS generando numerosi errori di mixed content. Non so se sia un vero e proprio bug, ma il rapporto causa-effetto non mi è chiaro per nulla.

Comunque, la soluzione è stata rimuovere quelle due righe.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *