Star-Dust Expert Licensed User Longtime User Sep 8, 2021 #1 Buongiorno a tutti, Sto realizzando un piccolo codice in PHP. Ho bisogno di capire se la pagina è SSL, ovvero se l'indirizzo inizia con https. Questo perché nel caso voglio reindirizzare alla pagina sicura. Ho provato molti sorgenti trovati sul web ma nessuno ha funzionato. Last edited: Sep 8, 2021
Buongiorno a tutti, Sto realizzando un piccolo codice in PHP. Ho bisogno di capire se la pagina è SSL, ovvero se l'indirizzo inizia con https. Questo perché nel caso voglio reindirizzare alla pagina sicura. Ho provato molti sorgenti trovati sul web ma nessuno ha funzionato.
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #2 [Inesperto] Ma può una pagina Web "essere SSL"? Non lo è (o non è) il sito o meglio l'URL?
D Deleted member 103 Guest Sep 8, 2021 #3 Non vorrei sbagliare, ma penso che quasi tutti gli indirizzi(incluso anche il mio) iniziano con "https".
Non vorrei sbagliare, ma penso che quasi tutti gli indirizzi(incluso anche il mio) iniziano con "https".
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #4 Filippo said: Non vorrei sbagliare, ma penso che quasi tutti gli indirizzi(incluso anche il mio) iniziano con "https". Click to expand... Sì, i siti con https indicano un protocollo sicuro e quelli senza la "s", solo http, non lo sono, ma la domanda è (credo): "ho scritto una pagina web: come posso verificare che essa sia/risulti/venga rilevata come sicura?" e io non credo esista una risposta, perché non dipende dalla pagina, puoi metterla sia in un sito sicuro che in uno che non lo è.
Filippo said: Non vorrei sbagliare, ma penso che quasi tutti gli indirizzi(incluso anche il mio) iniziano con "https". Click to expand... Sì, i siti con https indicano un protocollo sicuro e quelli senza la "s", solo http, non lo sono, ma la domanda è (credo): "ho scritto una pagina web: come posso verificare che essa sia/risulti/venga rilevata come sicura?" e io non credo esista una risposta, perché non dipende dalla pagina, puoi metterla sia in un sito sicuro che in uno che non lo è.
Star-Dust Expert Licensed User Longtime User Sep 8, 2021 #5 le pagine possono essere http://www.lucams.it/index.php oppure https://www.lucams.it/index.php la pagina è la stessa e viene raggiunta da entrambi gli indirizzi. Non è il sito che è sicuro e il protocollo che scegli che è sicuro. Ora se fosse in B4J e usassi jServer in base alla pagina indirizzerei a sicuro e non sicuro, ma il server non è b4j è un dominio in Hosting e accetta entrambi gli indirizzi. Vorrei reindirizzare le pagine che vengono chiamate in chiaro e ci sono diversi sorgenti php che trovi sul web che puntualmente non funzionano. Devo fare un controllo in php e vedere se sta usando il protocollo sicuro. In php come faccio a vedere che è https? Domanda semplice.
le pagine possono essere http://www.lucams.it/index.php oppure https://www.lucams.it/index.php la pagina è la stessa e viene raggiunta da entrambi gli indirizzi. Non è il sito che è sicuro e il protocollo che scegli che è sicuro. Ora se fosse in B4J e usassi jServer in base alla pagina indirizzerei a sicuro e non sicuro, ma il server non è b4j è un dominio in Hosting e accetta entrambi gli indirizzi. Vorrei reindirizzare le pagine che vengono chiamate in chiaro e ci sono diversi sorgenti php che trovi sul web che puntualmente non funzionano. Devo fare un controllo in php e vedere se sta usando il protocollo sicuro. In php come faccio a vedere che è https? Domanda semplice.
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #6 Star-Dust said: le pagine possono essere http://www.lucams.it/index.php oppure https://www.lucams.it/index.php la pagina è la stessa e viene raggiunta da entrambi gli indirizzi. Click to expand... Appunto, la pagina è la stessa; la domanda è: come può la pagina rilevare se essa stessa stia in un sito sicuro o no. Risposta: hai sicuramente cercato più di me
Star-Dust said: le pagine possono essere http://www.lucams.it/index.php oppure https://www.lucams.it/index.php la pagina è la stessa e viene raggiunta da entrambi gli indirizzi. Click to expand... Appunto, la pagina è la stessa; la domanda è: come può la pagina rilevare se essa stessa stia in un sito sicuro o no. Risposta: hai sicuramente cercato più di me
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #7 https://stackoverflow.com/questions/6768793/get-the-full-url-in-php
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #9 Star-Dust said: Già provato, non funziona Click to expand... Mi stai facendo zompettare tra questo thread e quello "internazionale" ? Ho appena risposto anche là.
Star-Dust said: Già provato, non funziona Click to expand... Mi stai facendo zompettare tra questo thread e quello "internazionale" ? Ho appena risposto anche là.
sirjo66 Well-Known Member Licensed User Longtime User Sep 8, 2021 #10 ti passo il codice che uso io Nel mio file index.php di www.miosito.it, le prime righe sono: Code: if ($_SERVER['SERVER_NAME']!='localhost' && substr($_SERVER['REMOTE_ADDR'],0,10)!='192.168.1.') { if(!isset($_SERVER['HTTPS'])) { header("Location:https://www.miosito.it"); return; } } ovviamente devi modificare www.miosito.it quel 192.168.1. mi serve quando lo sto testando in locale, anche questo se serve devi cambiarlo
ti passo il codice che uso io Nel mio file index.php di www.miosito.it, le prime righe sono: Code: if ($_SERVER['SERVER_NAME']!='localhost' && substr($_SERVER['REMOTE_ADDR'],0,10)!='192.168.1.') { if(!isset($_SERVER['HTTPS'])) { header("Location:https://www.miosito.it"); return; } } ovviamente devi modificare www.miosito.it quel 192.168.1. mi serve quando lo sto testando in locale, anche questo se serve devi cambiarlo
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #11 sirjo66 said: ovviamente devi modificare www.miosito.it Click to expand... Avrei voluto fare la mia (solita stupida) battuta, scrivendo: "Ho provato ma quel sito non esiste" e invece... esiste ?
sirjo66 said: ovviamente devi modificare www.miosito.it Click to expand... Avrei voluto fare la mia (solita stupida) battuta, scrivendo: "Ho provato ma quel sito non esiste" e invece... esiste ?
Star-Dust Expert Licensed User Longtime User Sep 8, 2021 #12 Purtroppo è un problema del sito ospitante. $_SERVER['HTTPS'] non restituisce nulla. IsSet è sempre falso.
Purtroppo è un problema del sito ospitante. $_SERVER['HTTPS'] non restituisce nulla. IsSet è sempre falso.
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #13 Star-Dust said: Purtroppo è un problema del sito ospitante. $_SERVER['HTTPS'] non restituisce nulla. Click to expand... anche $_SERVER['HTTP_X_FORWARDED_PROTO'] ?
Star-Dust said: Purtroppo è un problema del sito ospitante. $_SERVER['HTTPS'] non restituisce nulla. Click to expand... anche $_SERVER['HTTP_X_FORWARDED_PROTO'] ?
Star-Dust Expert Licensed User Longtime User Sep 8, 2021 #14 LucaMs said: anche $_SERVER['HTTP_X_FORWARDED_PROTO'] ? Click to expand... l'ho provato.
sirjo66 Well-Known Member Licensed User Longtime User Sep 8, 2021 #15 direi che il problema è il server probabilmente non c'è installato Apache ma qualcos'altro copia questo codice sul server (chiamalo getpost.php) e poi chiamalo da un browser qualsiasi, prima con http poi con https, e guarda la differenza dei settaggi Code: <!DOCTYPE html> <html> <body> <?php if (count($_GET)>0) { echo "<pre><h2>GET:</h2>"; print_r($_GET); echo "</pre><hr>\n"; } if (count($_POST)>0) { echo "<pre><h2>POST:</h2>"; print_r($_POST); echo "</pre><hr>\n"; } echo "<pre><h2>SERVER:</h2>"; print_r($_SERVER); echo "</pre><hr>\n"; if (count($_COOKIE)>0) { echo "<pre><h2>COOKIE (".count($_COOKIE)."):</h2>"; print_r($_COOKIE); echo "</pre><hr>\n"; } echo "<pre><h2>HEADERS:</h2>"; print_r(getallheaders()); echo "</pre><hr>\n"; $body = file_get_contents('php://input'); if ($body!='') { echo "<pre><h2>POST BODY:</h2>"; echo htmlentities($body); echo "</pre><hr>\n"; } ?> <!-- <pre> <h2>FILES:</h2> <?php print_r($_FILES); ?> </pre> <hr> --> <br/> </body> </html> Last edited: Sep 8, 2021
direi che il problema è il server probabilmente non c'è installato Apache ma qualcos'altro copia questo codice sul server (chiamalo getpost.php) e poi chiamalo da un browser qualsiasi, prima con http poi con https, e guarda la differenza dei settaggi Code: <!DOCTYPE html> <html> <body> <?php if (count($_GET)>0) { echo "<pre><h2>GET:</h2>"; print_r($_GET); echo "</pre><hr>\n"; } if (count($_POST)>0) { echo "<pre><h2>POST:</h2>"; print_r($_POST); echo "</pre><hr>\n"; } echo "<pre><h2>SERVER:</h2>"; print_r($_SERVER); echo "</pre><hr>\n"; if (count($_COOKIE)>0) { echo "<pre><h2>COOKIE (".count($_COOKIE)."):</h2>"; print_r($_COOKIE); echo "</pre><hr>\n"; } echo "<pre><h2>HEADERS:</h2>"; print_r(getallheaders()); echo "</pre><hr>\n"; $body = file_get_contents('php://input'); if ($body!='') { echo "<pre><h2>POST BODY:</h2>"; echo htmlentities($body); echo "</pre><hr>\n"; } ?> <!-- <pre> <h2>FILES:</h2> <?php print_r($_FILES); ?> </pre> <hr> --> <br/> </body> </html>
MarcoRome Expert Licensed User Longtime User Sep 8, 2021 #16 PHP: <? if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { $protocol = 'https://'; } else { $protocol = 'http://'; } echo $protocol; ?>
PHP: <? if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { $protocol = 'https://'; } else { $protocol = 'http://'; } echo $protocol; ?>
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #17 MarcoRome said: PHP: <? if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { $protocol = 'https://'; } else { $protocol = 'http://'; } echo $protocol; ?> Click to expand... https://www.b4x.com/android/forum/threads/php-and-ssl.134117/post-848333 ?
MarcoRome said: PHP: <? if (isset($_SERVER['HTTPS']) && ($_SERVER['HTTPS'] == 'on' || $_SERVER['HTTPS'] == 1) || isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && $_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https') { $protocol = 'https://'; } else { $protocol = 'http://'; } echo $protocol; ?> Click to expand... https://www.b4x.com/android/forum/threads/php-and-ssl.134117/post-848333 ?
MarcoRome Expert Licensed User Longtime User Sep 8, 2021 #18 LucaMs said: https://www.b4x.com/android/forum/threads/php-and-ssl.134117/post-848333 ? Click to expand... E certo se funziona perchè "scoprire l'acqua calda"
LucaMs said: https://www.b4x.com/android/forum/threads/php-and-ssl.134117/post-848333 ? Click to expand... E certo se funziona perchè "scoprire l'acqua calda"
LucaMs Expert Licensed User Longtime User Sep 8, 2021 #19 MarcoRome said: E certo se funziona perchè "scoprire l'acqua calda" Click to expand... Perché magari ti serve fredda e "scoprendola" riesci a fargli perdere calore? ? ? ?
MarcoRome said: E certo se funziona perchè "scoprire l'acqua calda" Click to expand... Perché magari ti serve fredda e "scoprendola" riesci a fargli perdere calore? ? ? ?
MarcoRome Expert Licensed User Longtime User Sep 8, 2021 #20 Infatti hai il sorgente funzionante, poi se vuoi, lo modifichi come vuoi.