Conosco la definizione generale ma ho bisogno di maggiori dettagli su come implementarli in generale e PHP in particolare, e quali sono esattamente le caratteristiche che ottengo da loro?Che cosa sono https e SSL? Come funzionano? Come possono essere utilizzati in PHP?
risposta
alcuni server Web sono configurati per rispecchiare l'intero sito, quindi è possibile ottenere ogni pagina su http o https, a seconda di ciò che si preferisce, o di come il browser li invia in giro. https è sicuro, ma un po 'più lento e mette più a dura prova il tuo hardware.
in modo da poter implementare il sito e acquistare come al solito, ma decidere di mettere tutto dal carrello alla cassa, pagamento e così via sotto https. per fare ciò, tutti i collegamenti al carrello degli acquisti sono assoluti e con prefisso https://
anziché http://
. ora, se le persone cliccano sull'icona del carrello, vengono trasferite alla versione sicura e, poiché tutti i link da lì in poi sono di nuovo relativi, rimangono lì.
ma! potrebbero sostituire https con http manualmente o andare sulla versione non crittografata utilizzando un collegamento dannoso, ecc.
in questo caso, probabilmente si potrebbe voler controllare se lo script è stato chiamato su https (_SERVER["SERVER_PROTOCOL"]
, afaik), e negare l'esecuzione se non (buona pratica). o inviare un reindirizzamento al sito sicuro.
in una nota a margine: https non utilizza SSL exclusivley più, TLS (il successore di SSL, vedere rfc2818) è più moderno
regola empirica: gli utenti dovrebbero avere la scelta se vogliono http o https in ambienti non critici, ma obbligato a utilizzare https sulle parti critiche del tuo sito (login/carrello/pagamento/...) per prevenire attacchi dannosi.
SSL sta per "Secure Socket Layer" ed è un metodo di comunicazione HTTP crittografata (tra le altre cose). Crittografa il traffico tra un browser Web e un server, rendendo possibile l'invio di dati protetti senza timore di intercettazioni.
SSL è una tecnologia a livello di server Web e non ha nulla a che fare con PHP. Puoi abilitare qualsiasi server web con SSL, sia che abbia PHP o meno, e non devi scrivere alcun codice PHP speciale per far apparire le tue pagine PHP su SSL.
Ci sono molte, molte guide da trovare su Internet su come impostare SSL per qualsiasi server web che si sta utilizzando. È un argomento vasto. È possibile start here per Apache.
SSL ora TLS http://en.wikipedia.org/wiki/Transport_Layer_Security – TWith2Sugars
molto interessante! Puoi fornire maggiori informazioni su 2 punti: 1- come possono chiamare il mio "https: //example.com/pay.php" chiamando "http: //example.com/pay.php"? se il mio file "pay.php" si trova nella cartella https non dovrebbe ottenere qualcosa come "Pagina non trovata"? 2- Da parte di uno sviluppatore, non ho davvero bisogno di preoccuparmi di SSL o TLS come viene configurato sul server poiché non c'è molto che possa fare per loro, vero? Fondamentalmente ci sarà qualcosa come 2 cartelle impostare "http" e "https" sul server e posso scegliere cosa fare da lì in poi, giusto? –
se ci sono 2 cartelle diverse, quindi il sito non è specchiato, e le cose di cui sopra non hanno alcun effetto su di te. quello di cui stavo parlando è che alcuni server sono configurati in modo http e https sono entrambi puntati alla stessa cartella. e sì, dal punto di vista non fa differenza se c'è SSL o TLS. – stefs