Maison > Opération et maintenance > Nginx > Comment configurer correctement https dans nginx

Comment configurer correctement https dans nginx

(*-*)浩
Libérer: 2019-06-18 11:02:43
original
22328 Les gens l'ont consulté

今天聊一下如何在nginx中配置https

在web应用开发中,为保证前端访问后端服务器的安全,需要使用https连接,现在来聊一下如何在nginx中配置https.

Comment configurer correctement https dans nginx

首先需要申请ssl证书。 在阿里云,腾讯云,华为云等云服务提供商的网站一般都会有免费ssl证书,申请一个即可;下面以华为云为例;
下载证书,会得到server.key和server.crt两个文件;在与nginx.conf同目录下创建ssl文件夹(名字任意), 把这两个证书放入刚创建的文件夹中;
在nginx.conf的server中增加如下配置:

server {
    listen                        443;
    server_name                   www.test.com # 域名            
    ssl                           on;  # 启用ssl功能            
    ssl_certificate               ssl/server.crt;             
    ssl_certificate_key           ssl/server.key;            
    ssl_session_timeout           5m;        # 客户端可以重用会话参数的时间
    ssl_protocols                 TLSv1 TLSv1.1 TLSv1.2;    # 使用的协议        
    ssl_ciphers                   ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;    # 配置加密套件    
    ssl_prefer_server_ciphers     on;

       ...    
}
Copier après la connexion

在配置443端口之前,需要先打开防火墙和443端口,以Centos7为例:

1) 开启防火墙:     systemctl start firewalld
     查看防火墙状态:    systemctl status firewalld    
2) 查看开通了哪些端口: firewall-cmd --list-ports 
3) 开通443端口: firewall-cmd --zone=public --add-port=443/tcp --permanent 
4) 重新加载下防火墙配置: firewall-cmd --reload
注意: 如果还有其它应用在运行,开启防火墙后,需要开通相应的端口,否则不能访问。
Copier après la connexion

80端口重定向至443端口的配置,在nginx.conf的server上面增加如下的server:

server {
    listen 80;
    server_name www.test.com;
    rewrite ^(.*)$ https://www.test.com$1 permanent; 
}
Copier après la connexion

验证配置是否正确:
执行 /usr/sbin/nginx -t
返回如下信息则表示配置成功:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful
Copier après la connexion

更多Nginx相关技术文章,请访问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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal