Maison > Article > Opération et maintenance > Comment déployer un certificat SSL dans Nginx
Nginx est le dernier serveur Web hautes performances Par rapport au serveur Apache traditionnel, en particulier sous un grand nombre de connexions client simultanées, les performances sont améliorées de plus de 10 fois. De nombreux grands sites Web PHP utilisent des serveurs Nginx. Bien que Nginx utilise le modèle d'E/S réseau du noyau Linux 2.6 et l'architecture epull, son utilisation reste relativement similaire à Apache et constitue une très bonne alternative à Apache.
Le certificat SSL est un type de certificat numérique, similaire aux copies électroniques des permis de conduire, des passeports et des licences commerciales. Parce qu'il est configuré sur le serveur, il est également appelé certificat de serveur SSL. Le certificat SSL est conforme au protocole SSL et est émis par une autorité de certification numérique de confiance après vérification de l'identité du serveur. Il dispose de fonctions de vérification de l'identité du serveur et de cryptage de la transmission des données.
Le protocole de prise de contact est le premier sous-protocole utilisé lorsque le client et le serveur communiquent à l'aide d'une connexion SSL. Le protocole de prise de contact comprend une série de messages entre le client et le serveur. Le protocole le plus complexe de SSL est le protocole de prise de contact. Ce protocole permet au serveur et au client de s'authentifier mutuellement, de négocier des algorithmes de cryptage et MAC, ainsi que des clés secrètes pour protéger les données envoyées dans les enregistrements SSL. Le protocole de handshake est utilisé avant le transfert de données par l'application.
Le protocole d'enregistrement est utilisé après une poignée de main réussie entre le client et le serveur, c'est-à-dire qu'une fois que le client et le serveur se sont identifiés et ont déterminé l'algorithme utilisé pour l'échange d'informations de sécurité, ils entrent dans le SSL. protocole d'enregistrement. Le protocole d'enregistrement fournit deux connexions SSL. Services :
(1) Confidentialité : Mis en œuvre à l'aide d'une clé secrète définie par le protocole de handshake
(2) Intégrité : Le protocole de handshake définit un MAC utilisé pour garantir l'intégrité du message
Client et Lorsque le serveur détecte une erreur, il envoie un message d'alerte à l'autre partie. S'il s'agit d'une erreur fatale, l'algorithme ferme immédiatement la connexion SSL et les deux parties supprimeront également en premier les numéros de session, les secrets et les clés concernés. Chaque message d'alarme comporte un total de 2 octets. Le premier octet indique le type d'erreur. S'il s'agit d'une alarme, la valeur est 1. S'il s'agit d'une erreur fatale, la valeur est 2. Le deuxième octet indique le type d'erreur réel.
Après avoir téléchargé et décompressé le certificat, vous verrez les fichiers avec le suffixe .key et .pem. Téléchargez ces deux fichiers sur le serveur nginx, puis créez le fichier de certificat. sous le dossier conf et copiez le certificat dans ce fichier.
./nginx -t Affichez le chemin d'installation de nginx, recherchez le fichier de configuration nginx.conf et modifiez
Ajoutez
server_name sous le serveur votre adresse de nom de domaine ;
écoutez 443 ssl;
ssl_certificate conf/cert/.pem;
ssl_certificate_key conf/cert/.key;
Ajoutez un nouveau serveur et ajoutez la configuration suivante
listen 80;
server_name votre nom de domaine ;
réécrivez ^(.*)$ https://$host$1;
./nginx -s reload
Ouvrez enfin la page Web pour vérification
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!