nginx 配置 ssl 实现https访问

1. 申请SSL证书

我这里以华为云为例,申请一个免费的SSL证书。申请的前提是你要有个域名。直接华为云控制台搜索ssl认证,步骤很简单,这里就不赘述了。

  • 申请成功后的截图
    申请成功后的截图
    申请成功后,华为云有提供安装证书的教程,可以直接参考

2. nginx 配置 SSL

具体配置如下:

  • HTTPS server
server {
        listen       443 ssl;
        server_name  域名;  # 与申请ssl证书的域名保持一致

         ssl_certificate  cert/server.crt;
		ssl_certificate_key  cert/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;

		location / {
             root   html;
             index  index.html index.htm;
		    try_files $uri $uri/ /index.html;
        }
     }
参数 参数说明
listen SSL访问端口号,设置为“443”。
SSL 设置为“on”,启用SSL功能。
ssl_certificate 证书文件“server.crt”。
设置为“server.crt”文件的路径,且路径中不能包含中文字符,
例如“cert/server.crt”。
ssl_certificate_key 私钥文件“server.key”。
设置为“server.key”的路径,且路径中不能包含中文字符,
例如“cert/server.key”。
ssl_protocols 使用的协议。
ssl_ciphers 配置加密套件,写法遵循OpenSSL标准。

注:ssl_certificatessl_certificate_key,申请ssl证书成功后,下载证书,找个nginx文件夹,对应的就是这两个,在nginx/conf创建一个cert文件,将两个文件夹拖入其中,改名即可。

  • server
server {
        listen       80;
        server_name  域名; # 与申请ssl证书的域名保持一致
    	rewrite ^/(.*) https://$server_name$request_uri? permanent;
}

猜你喜欢

转载自blog.csdn.net/News777/article/details/126776838