10
votes

Qu'est-ce que je dois coder pour utiliser https?

Dans un site de "brochure" standard, j'ai un sous-système où les données privées sont transmises dans une série de pages. Le site est fait et travaille maintenant sans HTTPS.

Quelqu'un peut-il me signaler à une liste des mesures que je dois faire, pour mettre en œuvre HTTPS sur la partie sécurisée du site?


4 Réponses :


7
votes

Le site Web doit être configuré lui-même, ce n'est pas lié à PHP lui-même à ce stade.

sur votre PC local, je pense que vous utilisez Apache comme serveur Web. Donc, pour Apache, vous avez besoin d'installer un certificat, Apache doit écouter le port HTTPS (443 par défaut).

Vous pouvez voir ce lien, il peut vous aider: http://www.onlam.com/pub/a/onlammp/2008/03/04/step-by-step-configuring-sssl-under-apache. HTML

En outre, dans toutes les sections du site Web, vous devez utiliser le protocole HTTPS dans l'URL, et non http. Par exemple. https://example.com


3 commentaires

Le lien est cassé maintenant


Vous avez raison. :( mais existe toujours dans Google Cache


Et trouvé un nouveau lien correct - corrigé dans la réponse aussi.



5
votes

Il n'y a pas de changement de code PHP impliqué. HTTPS désigne les données que la communication entre le navigateur et le serveur Web sera cryptée. Le navigateur est déjà configuré pour HTTPS, tout ce que vous avez à faire est de configurer votre serveur Web. Très probablement, vous pouvez faire tout le changement de votre panneau de commande d'hébergement lui-même.

Si vous souhaitez forcer https, vous pouvez utiliser un code MOD_REWRE ONE LIÈRE


1 commentaires

Et pour ce code de ligne, voir par exemple: Stackoverflow.com/Questtions/4398951/...



19
votes

La seule chose que vous devez faire comme un programmeur doit faire, c'est vérifier que l'utilisateur utilise en fait HTTPS:

if($_SERVER['SERVER_PORT'] !== 443 &&
   (empty($_SERVER['HTTPS']) || $_SERVER['HTTPS'] === 'off')) {
  header('Location: https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI']);
  exit;
}


0 commentaires

1
votes

Essayez ceci:

<?php
  if ($_SERVER['HTTPS'] != 'on') {
    echo '<script type="text/javascript">window.location = "https://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '";</script>';
  }
?>


0 commentaires