Maison > Article > Applet WeChat > Explication détaillée de la configuration de l'environnement Nginx pour le développement de l'applet WeChat
Explication détaillée de la configuration de l'environnement du serveur du programme WeChat Mini
Contenu principal :
Étapes de demande de certificat SSL gratuit
2. Configuration HTTPS Nginx
3. Processus de mise à niveau TLS 1.2
L'applet WeChat nécessite l'utilisation de https
pour envoyer des requêtes, le serveur Web doit alors être configuré pour prendre en charge https
et vous. vous devez d'abord demander SSL. L'applet du certificat
nécessite également que la version de TLS
(Transport Layer Security Protocol) soit au moins 1.2
Après avoir configuré https
, si la version de TLS
. est inférieur, il y aura un problème de mise à niveau
Donc, les principales étapes de la configuration de l'environnement côté serveur :
Demander un certificat SSL
Configurer le serveur Web pour prendre en charge https (j'utilise It's nginx)
Mise à niveau vers TLS 1.2
SSL demande de certificat
https
Vous devez utiliser un certificat SSL Le prix de ce certificat est compris entre 3 000 et 5 000 à plus de 10 000 par an Pour les petites équipes ou les utilisateurs qui souhaitent se familiariser. petits programmes, ce prix reste relativement élevé. Dans ce cas, vous pouvez choisir un certificat gratuit. De plus, vous pouvez également envisager des services cloud, tels que Wild Dog, LeanCloud. . Ces plates-formes de services matures prennent toutes en charge https. Si ces plates-formes peuvent répondre aux besoins de votre entreprise, vous économiserez beaucoup de problèmes
Certificat gratuit : Symantec DV SSL sur Alibaba Cloud
.Processus de candidature
wanwang.aliyun.com
Connectez-vous à la console, cliquez sur 安全 -> 证书服务
dans le menu de gauche, il y a un bouton 购买证书
dans le coin supérieur droit de cette page, cliquez pour saisir l'achat page, sélectionnez 免费型DV SSL
, achetez
et le montant de la commande est de 0 yuan, suivez simplement le processus d'achat. Une fois terminé, revenez à la page. 证书服务
page, vous pouvez voir un certificat dans la liste
Procédez d'abord à l'opération "Terminer ", renseignez votre nom de domaine et les informations de base
puis "Terminer ", le lien deviendra "Progrès", après avoir cliqué sur Suivez les invites, principalement pour vérifier votre propre serveur. J'ai choisi la vérification des fichiers, télécharger. un fichier et téléchargez-le sur mon serveur, et attendez la vérification
Une fois la vérification terminée, vous pouvez télécharger le certificat SSL en 10 minutes environ
Configuration HTTPS Nginx
Téléchargez le certificat dans le répertoire nginx, par exemple,
/usr/local/nginx/cert
Modifierconf/nginx.conf
Configurer le serveur HTTPS Bloquer, ajouter la configuration SSL
# HTTPS server # server { listen 443 ssl; server_name localhost; ...... ssl on; ssl_certificate /usr/local/nginx/cert/213994146300992.pem; ssl_certificate_key /usr/local/nginx/cert/213994146300992.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; } ...... }
Rechargez le fichier de configuration, utilisez la méthode https
pour accéder à votre propre nom de domaine dans le navigateur, voyez si vous pouvez y accéder normalement
Mise à niveau vers TLS 1.2
Afficher la version TLS
Après avoir accédé à l'URL https, il y aura une petite icône de cadenas vert devant la barre d'adresse. Cliquez dessus pour afficher les informations sur la version TLS
.
S'il n'atteint pas 1.2
, vous devez mettre à niveau
L'environnement d'exploitation ci-dessous est Centos Linux
1) Vérifiez la version openssl
https://www.openssl.org/source/
1.0.2
Les versions suivantes doivent être mises à niveau. Les versions précédentes ont officiellement arrêté la maintenance
2) Mettre à niveau openssl
Allez sur le site officiel pour télécharger la nouvelle version
https://www.openssl.org/source/
Par exemple, téléchargez sur /usr/local
Mise à niveau
cd /usr/local tar zxvf openssl-1.0.2j.tar.gz cd openssl-1.0.2j ./config --prefix=/usr/local/openssl make && make install mv /usr/bin/openssl \ /usr/bin/openssl.OFF mv /usr/include/openssl \ /usr/include/openssl.OFF ln -s \ /usr/local/openssl/bin/openssl \ /usr/bin/openssl ln -s \ /usr/local/openssl/include/openssl \ /usr/include/openssl echo "/usr/local/openssl/lib"\ >>/etc/ld.so.conf ldconfig -v
Vérification
openssl version -a
3) Recompilez nginx
Après la mise à niveauOpenSSL
, nginx doit être recompilé, sinon TLS est toujours une ancienne version
Ce qui suit est l'installation de base Si vous avez besoin de plus, veuillez l'ajuster vous-🎜>
Le logiciel utilisé. openssl Il a été installé avantpcreinstallation de pcre :
下载地址 http://www.pcre.org/ 例如下载到 /usr/local cd /usr/local tar -zxv -f pcre-8.39.tar.gz cd pcre-8.39 ./configure --prefix=/usr/local/pcre/ make && make install
Installation de zlib
下载地址 http://www.zlib.net/ 例如下载到 /usr/local cd /usr/local tar -zxv -f zlib-1.2.10.tar.gz cd zlib-1.2.10 ./configure --prefix=/usr/local/zlib/ make && make install
Compilez nginx :
tar zxvf nginx-1.10.3.tar.gz cd nginx-1.10.3 ./configure --prefix=/data/nginx --with-http_ssl_module --with-openssl=/usr/local/openssl
tar -zxvf nginx-1.10.2.tar.gz cd nginx-1.10.2 ./configure \ --user=用户 \ --group=组 \ --prefix=/usr/local/nginx \ --with-http_ssl_module \ --with-openssl=/usr/local/openssl-1.0.2j \ --with-pcre=/usr/local/pcre-8.39 \ --with-zlib=/usr/local/zlib-1.2.10 \ --with-http_stub_status_module \ --with-threads make && make installUne fois la compilation terminée, n'oubliez pas de modifier le fichier de configuration et ajoutez des informations relatives à SSL Ensuite démarrez nginx et visitez l'url https Vérifiez à nouveau la version TSL
Problèmes rencontrés lors de la compilation et de l'installation de Nginx :
L'erreur Le message est le suivant :/bin/sh: line 2: ./config: No such file or directory make[1]: *** [/usr/local/ssl/.openssl/include/openssl/ssl.h] Error 127 make[1]: Leaving directory `/usr/local/src/nginx-1.10.2‘ make: *** [build] Error 2Ce qui doit être expliqué, c'est que le code source Nginx que j'ai utilisé pour la compilation ici est 1.10.2. D'après le message d'erreur, nous savons que l'erreur est due au fait que Nginx ne trouve pas le fichier correspondant dans le répertoire /usr/local/ssl/.openssl/ lors de la compilation. En fait, nous pouvons trouver ce répertoire lorsque nous ouvrons le /usr/. local/ssl/. Il n'y a pas de répertoire .openssl, nous pouvons donc résoudre ce problème en modifiant la sélection du chemin pour openssl lors de la compilation de Nginx
Solution :
Ouvrir le fichier source nginx Le fichier /root/nginx-1.10.2/auto/lib/openssl/conf a trouvé ce code :CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include" CORE_DEPS="$CORE_DEPS $OPENSSL/.openssl/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/.openssl/lib/libcrypto.a" CORE_LIBS="$CORE_LIBS $NGX_LIBDL"et l'a modifié par le code suivant :
CORE_INCS="$CORE_INCS $OPENSSL/.openssl/include" CORE_DEPS="$CORE_DEPS $OPENSSL/include/openssl/ssl.h" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libssl.a" CORE_LIBS="$CORE_LIBS $OPENSSL/lib/libcrypto.a" CORE_LIBS="$CORE_LIBS $NGX_LIBDL"Puis compilez et installez Nginx
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!