Se usare connessioni criptate è da sempre una "best practice" da questo mese sembra debba, finalmente, diventare una "necessità": https://www.miamammausalinux.org/2016/12/chrome-si-muove-verso-un-web-piu-sicuro/.
Forse esistono metodi più eleganti per forzare un'applicativo LAMP qualunque ad usare la versione Sicura del protocollo, anche quando la richiesta da parte del client viene fatta su HTTP "liscio", ma nel nostro caso una funzione richiamata all'inizio dello Script Router è sembrata la soluzione ideale. Tuttavia l'implementazione che avevamo usato quando l'applicativo risiedeva sul precedente hosting causava un bel Error 310 (ERR_TOO_MANY_REDIRECTS). Gli stack LAMP non sono tutti uguali e, almeno quando ci si affida ad hosting "preconfigurati", bisogna adattare il proprio codice alla configurazione presente... con buona pace della portabilità!
/* * Forza l'uso du HTTPS - SSL su OpenShift */ function requireSSL( ) { if( ! isset( $_SERVER['HTTPS'] ) && $_SERVER['HTTPS'] !== "1" ) { header( "Location: https://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"] ); exit(); } }
Per forzare il passaggio ad HTTPS di ogni richiesta pervenuta ad una data pagina basta richiamare, prima dell'emissione di qualsiasi output verso il client [si sta usando header()], la funzione senza nessun parametro:
requireSSL();
... se avete uno Script Router quello è l'unico punto in cui intervenire...
Nessun commento:
Posta un commento