


Comment configurer nginx pour utiliser le module SSL pour prendre en charge l'accès 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)".
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".
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 / { # # #} #}
(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; } }
Enregistrez et quittez.
(4) Redémarrez nginxnginx -s reload
Problèmes rencontrés lors du processus d'installation
Erreur 1 :
nginx : [emerg] directive inconnue "ssl" dans /usr/local/. nginx/conf/nginx.conf:151Solution : 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
./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module
mark
cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak
nginx -s stop
ps aux|grep nginx
kill -9 10922 kill -9 28276 kill -9 28277 kill -9 28278
cp ./objs/nginx /usr/local/nginx/sbin/
nginx
nginx -v
Erreur 2 :
nginx : [emerg] le paramètre "ssl" nécessite ngx_http_ssl_module dans /usr/local/nginx/conf/nginx.conf:148
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.
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

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.

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 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? 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.

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").

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

É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".

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.
