阿里云免费购买SSL证书,nginx无缝升级https

哑域枚举
• 阅读 4000

最近在升级交流学习社区,觉得有必要升级成https.以下是自己在升级中记录。

以下包括以下部分:

一、阿里云免费购买SSL证书

1、自己在阿里云申请了免费的,然后自己支付0元,购买了SSL证书

2、我选择DNS验证

3、在SSL证书中,下载cert证书,然后放到nginx服务器上

二、nginx无缝升级https

4、查看nginx是否支持ssl

5、配置ssl模块

6、重新编译一下

7、因为这次是升级nginx,所以不需要执行 make install,首先备份原nginx执行脚本

8、把新编译的nginx执行脚本拷贝到相应的目录下:’

9、最后进行平滑升级

10、再次检查nginx是否有https模块

11、展示一下https网站站点,https://www.mwcxs.top/

附注1:nginx配置SSL报错问题,ssl on报错

附注2:nginx的https服务配置

1、自己在阿里云申请了免费的,然后自己支付0元,购买了SSL证书

阿里云免费购买SSL证书,nginx无缝升级https

2、我选择DNS验证,因为域名是自己的。

DNS验证方式一般需要由您的域名管理人员进行相关操作。请按照您的证书订单中的进度提示,在您的域名管理系统中进行相应配置。

选择DNS域名授权验证方式,您需要到您的域名解析服务商(如万网、新网、DNSPod等)提供的系统中进行配置。例如,您的域名托管在阿里云,则需要到云解析DNS控制台进行相关配置。

生成之后的域名验证,在域名解析管理可以看到。

阿里云免费购买SSL证书,nginx无缝升级https

3、在SSL证书中,下载cert证书,然后放到nginx服务器上

阿里云免费购买SSL证书,nginx无缝升级https

4、查看nginx是否支持ssl:

  ./nginx -V

阿里云免费购买SSL证书,nginx无缝升级https

查看 configure arguments 信息中是否包含 -with-http_ssl_module 字样

5、配置ssl模块

找到之前安装 Nginx 时的解压目录,配置ssl模块:

./configure --with-http_ssl_module

阿里云免费购买SSL证书,nginx无缝升级https

6、重新编译一下

在解压目录执行make

make

阿里云免费购买SSL证书,nginx无缝升级https

7、因为这次是升级nginx,所以不需要执行 make install,首先备份原nginx执行脚本:

mv /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.old

阿里云免费购买SSL证书,nginx无缝升级https

8、把新编译的nginx执行脚本拷贝到相应的目录下:

cd objs
cp nginx /usr/local/nginx/sbin/

阿里云免费购买SSL证书,nginx无缝升级https

阿里云免费购买SSL证书,nginx无缝升级https

9、最后进行平滑升级

cd ..
make upgrade

阿里云免费购买SSL证书,nginx无缝升级https

10、再次检查nginx是否有https模块

阿里云免费购买SSL证书,nginx无缝升级https

11、展示一下https网站站点,https://www.mwcxs.top/

阿里云免费购买SSL证书,nginx无缝升级https

附注1:nginx配置SSL报错问题,ssl on报错

启动报错(错误信息:nginx: [emerg] the "ssl" parameter requires ngx_http_ssl_module in /home/soft/nginx/conf/nginx.conf:76)
需要配置模块ssl模块 --with-http_ssl_modul,请查看本文的第二部分:2、配置ssl模块

附注2:nginx的https服务配置

  # HTTPS server

server {
    listen 443;
    server_name www.mwcxs.top;

    ssl on;
    root /home/nodejs/liblog/www;
    index index.js index.html index.htm;
    
    ssl_certificate      /usr/local/nginx/cert/15420110408020120565539868.crt;
    ssl_certificate_key  /usr/local/nginx/cert/15420110408020120565539868.key;

    ssl_session_cache    shared:SSL:1m;
    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;

    if ( -f $request_filename/index.html ){
        rewrite (.*) $1/index.html break;
    }
    if ( !-f $request_filename ){
        rewrite (.*) /index.js;
    }
    location / {
        proxy_http_version 1.1;
        proxy_set_header Connection "";
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_set_header X-NginX-Proxy true;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection "upgrade";
        proxy_pass http://learning_community_node$request_uri;
        proxy_redirect off;
    }

    location = /production.js {
        deny all;
    }

    location = /testing.js {
        deny all;
    }

    location ~ /static/ {
        etag         on;
        expires      max;
    }
    
}


server {
    listen 80;
    server_name www.mwcxs.top mwcxs.top;
    return  301 https://$server_name$request_uri;
}

注:return 301 https://$server_name$request_uri;用来把http转换成https。

欢迎关注:https://github.com/saucxs/nod... ,欢迎fork和start

点赞
收藏
评论区
推荐文章
冴羽 冴羽
3年前
VuePress 博客优化之开启 HTTPS
前言在中,我们使用VuePress搭建了一个博客,最终的效果查看:。注意此时,我们的域名还是,众所周知,开启HTTPS有很多好处,比如可以实现数据加密传输等,那我们如何开启HTTPS配置呢?1.购买证书阿里云提供了免费证书可以使用,在每个自然年内,都可以通过SSL证书服务一次性申领20张免费证书。1.1购买证书访问,选择「D
高防加速CDN 高防加速CDN
2年前
为什么安装了SSL证书,网站还是显示不安全?
SSL证书是数字证书的一种,类似于驾驶证、护照和营业执照的电子副本。因为配置在服务器上,也称为SSL服务器证书。SSL证书就是遵守SSL协议,由受信任的数字证书颁发机构CA,在验证服务器身份后颁发,具有服务器身份验证和数据传输加密功能。由于http明文方式
Stella981 Stella981
3年前
Spring Boot前后端分离项目配置SSL证书——HTTPS
网站添加免费SSL证书——HTTPS协议一、SSL证书的下载SpringBoot前后端分离项目配置SSL证书,需要申请两个证书。前端申请网站主域名的SSL证书,后端可以在域名管理里面新建一个子域名。例如我的项目前端域名为:www.mzwhzy.com,后端域名为:b
Stella981 Stella981
3年前
Nginx配置https
一、开启nginx的ssl模块1.未安装过nginx,编译安装配置参数如下:./configure\prefix/usr/local/nginx\withpcre\withhttp\_ssl\_modulessl模块\withhttp\_stub\_status\_module\wit
Easter79 Easter79
3年前
Tomcat配置SSL证书,使其支持HTTPS协议
自己搞个网站玩玩,话说某部门办事效率真的是停留在信件时代的。不过阿里倒是比较厚道的,为此专门给我免费续费了一个月云服务器,美滋滋!看看具体操作吧!1.备案呗!不备案域名不能用,解析了也白搭。2.申请证书,阿里云免费的证书申请地址:传送门(https://www.oschina.net/action/GoToLink?urlhttps%3A%
Stella981 Stella981
3年前
Nginx 配置 HTTPS 服务器
Nginx配置HTTPS并不复杂,主要有两个步骤:签署第三方可信任的SSL证书 和 配置HTTPS签署第三方可信任的SSL证书关于SSL证书有关SSL的介绍可以参阅维基百科的传输层安全协议和阮一峰先生的 《SSL/TLS协议运行机制的概述》。SSL证书主要有两
Easter79 Easter79
3年前
Tomcat 服务配置https(JKS格式SSL证书)
一、申请SSL证书我使用的是腾讯云服务申请的免费证书,申请教程如下:https://my.oschina.net/u/2820979/blog/3112997(https://my.oschina.net/u/2820979/blog/3112997)二、Tomact配置https将下载的证书拷贝linux服务器下tomact服务器co
Stella981 Stella981
3年前
Nginx 配置Https 协议
1\.去阿里云SSL证书购买证书!(https://oscimg.oschina.net/oscnet/3398ef872c4f1e56e01a1c79f270d756877.png) 2. 审核通过后下载nginx的ssl证书!(https://img2018.cnblogs.com/ibeta/1868441/202002/1
Wesley13 Wesley13
3年前
MySQL8开启ssl加密
1概述MySQL从5.7开始默认开启SSL加密功能,进入MySQL控制台后输入status可以查看ssl的状态,出现下图表示在使用ssl:!在这里插入图片描述(https://imgblog.csdnimg.cn/20200325131703934.png)另外,ssl加密需要密钥与证书,可以使用openssl手动生成或使用my
Stella981 Stella981
3年前
Nginx搭建 Https 运行Docker项目
一、环境介绍阿里云centos7.4Nginx/1.12.1Let’sEncrypt永久免费SSL证书Docker已打包好项目的镜像(详情参考http://www.cnblogs.com/killall007/p/8477484.html)二、Nginx安装首先安装ssl,pcre,zli
3A网络 3A网络
2年前
详解 SSL(三):SSL 证书该如何选择?
详解SSL(三):SSL证书该如何选择?在上一篇《详解SSL(二):SSL证书对网站的好处》中,我们知道了在网站部署SSL证书后,不管是对网站本身还是对网站的用户都能够带来许多好处。那么随着HTTPS的普及,市面上也出现了各种不同的SSL证书。并且由于SSL证书的多样性,很多人对于如何选择SSL证书有着很大的困惑。因此,本篇文章