Maison Opération et maintenance Nginx Comment configurer nginx pour utiliser le module SSL pour prendre en charge l'accès HTTPS

Comment configurer nginx pour utiliser le module SSL pour prendre en charge l'accès HTTPS

May 21, 2023 pm 06:10 PM
nginx ssl https

Contexte :

L'applet WeChat est utilisée dans le développement de projets, mais l'URL de configuration du serveur doit être https, donc le module SSL de nginx doit être configuré pour prendre en charge l'accès https. En d'autres termes, vous devez créer un site Web. avec le nom de domaine dmsdbj.com Il est nécessaire d'accéder via https://dmsdbj.com

SSL est appelé secure socket layer en anglais, secure socket layer. SSL est un certificat numérique qui utilise le protocole SSL pour établir un canal sécurisé entre le navigateur et le serveur web. Les informations sur les données sont transmises de manière sécurisée entre le client et le serveur.

Prérequis :

1 La configuration du module SSL nécessite d'abord ca. Certificat, le certificat peut être émis manuellement par vous-même ou demandé sur Alibaba Cloud. J'ai demandé le certificat sur Alibaba Cloud. (Pour l'émission manuelle, veuillez vous référer au lien en bas de l'article)

2. Le module SSL n'est pas installé par défaut. Si vous souhaitez utiliser ce module, vous devez spécifier le paramètre –with-http_ssl_module lors de la compilation. nginx.

Alibaba Cloud a acheté le certificat ca

Étapes de fonctionnement :

1. Téléchargez le certificat ca

1. Connectez-vous à Alibaba Cloud, sélectionnez "Console" - "Produits et services", puis sélectionnez "ca Certificate Service" dans la colonne "Sécurité (Cloud Shield)" (Sécurité des données)".

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

2. Cliquez sur "Télécharger" sur le certificat acheté, sélectionnez "nginx/tengine" sur la page nouvellement ouverte et cliquez sur "Télécharger le certificat pour nginx".

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

2. Installez le certificat dans le fichier de configuration nginx

Description du fichier : 1. Le fichier de certificat "nom du certificat.pem'' contient deux sections, veuillez ne supprimer aucune section. 2. Si le csr est créé par le système de certificat, il contient également : le fichier de clé privée du certificat "nom du certificat.key" (1) Créez le dossier cert dans le répertoire où se trouve le fichier de configuration nginx, et copiez tous les fichiers téléchargés dans le répertoire cert. Si vous créez vous-même un fichier csr lors de la demande de certificat, veuillez placer le fichier de clé privée correspondant dans le répertoire cert et nommez-le « nom du certificat.key »

(2) Ouvrez nginx dans le répertoire conf ; sous le répertoire d'installation de nginx. conf, recherchez :

# https server
# #server {
# listen 443;
# server_name localhost;
# ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key;
# ssl_session_timeout 5m;
# ssl_protocols sslv2 sslv3 tlsv1;
# ssl_ciphers all:!adh:!export56:rc4+rsa:+high:+medium:+low:+sslv2:+exp;
# ssl_prefer_server_ciphers on;
# location / {
#
#
#}
#}
Copier après la connexion

(3) Modifiez-le en (les attributs commençant par ssl parmi les attributs suivants sont directement liés à la configuration du certificat, veuillez copier ou ajuster les autres attributs en fonction de votre situation réelle) :

server {
  listen 443;
  server_name localhost;
  ssl on;
  root html;
  index index.html index.htm;
  ssl_certificate  cert/证书名称.pem;
  ssl_certificate_key cert/证书名称.key;
  ssl_session_timeout 5m;
  ssl_ciphers ecdhe-rsa-aes128-gcm-sha256:ecdhe:ecdh:aes:high:!null:!anull:!md5:!adh:!rc4;
  ssl_protocols tlsv1 tlsv1.1 tlsv1.2;
  ssl_prefer_server_ciphers on;
  location / {
    root html;
    index index.html index.htm;
  }
}
Copier après la connexion

Enregistrez et quittez.

(4) Redémarrez nginx

nginx -s reload
Copier après la connexion

(5) Accédez à votre site via https et testez la configuration d'installation du certificat du site. Entrez https://dmsdbj.com dans le navigateur, comme indiqué. dans la figure ci-dessous, la configuration est réussie

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Problèmes rencontrés lors du processus d'installation

Erreur 1 :

nginx : [emerg] directive inconnue "ssl" dans /usr/local/. nginx/conf/nginx.conf:151

Solution :

Cette erreur peut être provoquée par deux situations :

Cas 1 : Le format du fichier de configuration est incorrect

Lien de référence de la solution :

Cas 2 : Le SSL. le module n'est pas installé

Le module ssl n'est pas installé par défaut. Si vous souhaitez utiliser ce module, vous devez spécifier le paramètre --with-http_ssl_module lors de la compilation de nginx.

Solution :

nginx n'a pas le module http_ssl_module. , apportez simplement la configuration --with-http_ssl_module lors de la compilation et de l'installation, mais la situation actuelle est que mon nginx a déjà été installé. Comment ajouter le module est en fait très simple. expliquer : Mon nginx Le répertoire d'installation est le répertoire /usr/local/nginx, et mon package de code source se trouve dans le répertoire /usr/local/src/nginx-1.3.6

(1) Basculez vers le package de code source :

cd /root/nginx-1.13.6
Copier après la connexion

(2) Informations de configuration :

./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
Copier après la connexion

(3) Une fois la configuration terminée, exécutez make pour compiler. N'effectuez pas make install, sinon ce sera une installation par écrasement

mark
Copier après la connexion

(4) Sauvegardez ensuite le fichier. nginx

cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
Copier après la connexion

(5) installé d'origine Arrêtez nginx La commande normale est simplement nginx -s stop

nginx -s stop
Copier après la connexion

S'il ne peut pas être arrêté, tuez simplement le processus directement. ps aux | grep process name pour afficher le numéro pid occupé par le processus.

ps aux|grep nginx
Copier après la connexion

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Tuez simplement le pid détecté. La commande kill -9 pid est utilisée pour terminer le processus. Vous devez d'abord tuer le pid correspondant à root avant de pouvoir procéder aux trois pids person suivants.

kill -9 10922
kill -9 28276
kill -9 28277
kill -9 28278
Copier après la connexion

(6) Écrasez le nginx d'origine avec le nginx

cp ./objs/nginx /usr/local/nginx/sbin/
Copier après la connexion

nouvellement compilé(7) Démarrez nginx

nginx
Copier après la connexion

(8) Utilisez la commande suivante pour vérifier s'il a été ajouté avec succès.

nginx -v
Copier après la connexion

Erreur 2 :

nginx : [emerg] le paramètre "ssl" nécessite ngx_http_ssl_module dans /usr/local/nginx/conf/nginx.conf:148

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Solution :

La solution à cette situation fait référence à la première erreur. La solution à la deuxième situation est suffisant.

Erreur trois :

arrêt de nginx... nginx : [emerg] bio_new_file("/usr/local/nginx/conf/cert/214291778530222.pem") a échoué (ssl : erreur :02001002 :bibliothèque système : fopen : aucun fichier ou répertoire de ce type : fopen('/usr/local/nginx/conf/cert/214291778530222.pem','r') error:2006d080:bio routines:bio_new_file:no such file) a échoué, utilisez la fermeture forcée.

Comment configurer nginx pour utiliser le module SSL pour prendre en charge laccès HTTPS

Solution :

Cela peut être dû à un emplacement de stockage incorrect du chemin du certificat, et tant que le chemin absolu est écrit, une erreur sera signalée, quel que soit Windows ou Linux.

Placez le fichier de certificat dans le répertoire où se trouve nginx.conf.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment configurer le nom de domaine du serveur cloud dans nginx Comment configurer le nom de domaine du serveur cloud dans nginx Apr 14, 2025 pm 12:18 PM

Comment configurer un nom de domaine NGINX sur un serveur cloud: Créez un enregistrement A pointant vers l'adresse IP publique du serveur cloud. Ajoutez des blocs d'hôtes virtuels dans le fichier de configuration Nginx, en spécifiant le port d'écoute, le nom de domaine et le répertoire racine du site Web. Redémarrez Nginx pour appliquer les modifications. Accéder à la configuration du test de nom de domaine. Autres notes: Installez le certificat SSL pour activer HTTPS, assurez-vous que le pare-feu autorise le trafic Port 80 et attendez que la résolution DNS prenne effet.

Comment vérifier la version nginx Comment vérifier la version nginx Apr 14, 2025 am 11:57 AM

Les méthodes qui peuvent interroger la version Nginx sont: utilisez la commande nginx -v; Afficher la directive de version dans le fichier nginx.conf; Ouvrez la page d'erreur Nginx et affichez le titre de la page.

Comment vérifier si Nginx est démarré Comment vérifier si Nginx est démarré Apr 14, 2025 pm 01:03 PM

Comment confirmer si Nginx est démarré: 1. Utilisez la ligne de commande: SystemCTl Status Nginx (Linux / Unix), netStat -ano | Findstr 80 (Windows); 2. Vérifiez si le port 80 est ouvert; 3. Vérifiez le message de démarrage NGINX dans le journal système; 4. Utilisez des outils tiers, tels que Nagios, Zabbix et Icinga.

Comment configurer Nginx dans Windows Comment configurer Nginx dans Windows Apr 14, 2025 pm 12:57 PM

Comment configurer Nginx dans Windows? Installez Nginx et créez une configuration d'hôte virtuelle. Modifiez le fichier de configuration principale et incluez la configuration de l'hôte virtuel. Démarrer ou recharger nginx. Testez la configuration et affichez le site Web. Activer sélectivement SSL et configurer les certificats SSL. Définissez sélectivement le pare-feu pour permettre le trafic Port 80 et 443.

Comment vérifier le nom du conteneur Docker Comment vérifier le nom du conteneur Docker Apr 15, 2025 pm 12:21 PM

Vous pouvez interroger le nom du conteneur Docker en suivant les étapes: répertorier tous les conteneurs (Docker PS). Filtrez la liste des conteneurs (à l'aide de la commande grep). Obtient le nom du conteneur (situé dans la colonne "Noms").

Comment démarrer le serveur Nginx Comment démarrer le serveur Nginx Apr 14, 2025 pm 12:27 PM

Le démarrage d'un serveur Nginx nécessite différentes étapes en fonction des différents systèmes d'exploitation: Système Linux / Unix: Installez le package NGINX (par exemple, en utilisant Apt-Get ou Yum). Utilisez SystemCTL pour démarrer un service NGINX (par exemple, sudo systemctl start nginx). Système Windows: téléchargez et installez les fichiers binaires Windows. Démarrer Nginx à l'aide de l'exécutable Nginx.exe (par exemple, nginx.exe -c conf \ nginx.conf). Peu importe le système d'exploitation que vous utilisez, vous pouvez accéder au serveur IP

Comment démarrer un conteneur par Docker Comment démarrer un conteneur par Docker Apr 15, 2025 pm 12:27 PM

Étapes de démarrage du conteneur Docker: Tirez l'image du conteneur: Exécutez "Docker Pull [Mirror Name]". Créer un conteneur: utilisez "Docker Create [Options] [Mirror Name] [Commandes et paramètres]". Démarrez le conteneur: exécutez "docker start [nom de conteneur ou id]". Vérifiez l'état du conteneur: vérifiez que le conteneur s'exécute avec "Docker PS".

Comment exécuter nginx apache Comment exécuter nginx apache Apr 14, 2025 pm 12:33 PM

Pour faire en sorte que Nginx exécute Apache, vous devez: 1. Installez Nginx et Apache; 2. Configurer l'agent Nginx; 3. Démarrer Nginx et Apache; 4. Testez la configuration pour vous assurer que vous pouvez voir le contenu Apache après avoir accédé au nom de domaine. De plus, vous devez faire attention à d'autres questions telles que la correspondance du numéro de port, la configuration de l'hôte virtuel et les paramètres SSL / TLS.

See all articles