将http网站设置为https

将http网站设置为https

  • http与https的区别在这里不做过多陈述。。。。。
  • 首先我们需要拥有一台自己的服务器,并且购买域名,域名备案。。。。。。

首先是不安全的http协议:

nginx 配置设置(主页是随便找的一个静态网页,不需要部署):

server {
        server_name www.golangxiaoyu.com;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
          root /var/wwwroot/html/dujitang/;
        }

    }

 这就是我们今天要改造的网站:

首先生成证书,如果你是直接在阿里云等购买的证书可跳过此步骤。

使用工具:acme.sh

安装:
curl https://get.acme.sh | sh

生成证书:

阿里云购买域名的朋友可以走这个极速通道,因为阿里云有接口可以直接操作域名控制台,这个接口已经被整合到了 acme.sh这个工具里面。只要设置一下 Ali_Key 和 Ali_Secret, 从哪里获得?

export Ali_Key="换成你的 AccessKey ID"
export Ali_Secret="换成你的 Access Key Secret"

生成证书

acme.sh --issue --dns dns_ali -d golangxiaoyu.com -d '*.golangxiaoyu.com'

golangxiaoyu就是我们需要申请证书的域名。

–issue :申请证书

–dns dns_ali:使用阿里云的 dns 服务,在阿里云买的域名,在没有修改默认 dns 的前提下,都可以使用这个参数来申请 https 证书。

-d golangxiaoyu.com:-d表示 domain,后面跟你要申请域名

-d ‘'*.golangxiaoyu.com':这里的-d 与上方一样,-d 参数可以带多个,这里的'*.golangxiaoyu.com'中的 * 表示泛域名,只要申请了这个证书像(www.golangxiaoyu.com,mail.golangxiaoyu.com,h5.golangxiaoyu.com …)这类的二级域名都可以使用此证书来实现 https。注意 golangxiaoyu.com这个域名不在这条规则里,所以上面又加了一条-d golangxiaoyu.com,这样你的主域名、二级子域名均可以使用此证书。

第一次生成出了错。。。。。

找寻解决方案:

 https://github.com/Neilpang/acme.sh/issues/1439

更新

再次尝试成功(这里需要等待一会的):

 接下来更新nginx配置:

#监听443端口并使用证书
server {

        listen 443 ssl;
        server_name www.golangxiaoyu.com;

        # Load configuration files for the default server block.
        include /etc/nginx/default.d/*.conf;

        location / {
          root /var/wwwroot/html/dujitang/;
        }


        ssl_certificate /root/.acme.sh/golangxiaoyu.com/fullchain.cer;
        ssl_certificate_key /root/.acme.sh/golangxiaoyu.com/golangxiaoyu.com.key;
    }

#80端口转换为443端口
server {
        listen 80;
        server_name www.golangxiaoyu.com;
        rewrite ^(.*)$ https://${server_name}$1 permanent;
    }

之后访问我们的成果!!!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值