微信小程序开发 SSL证书及HTTPS服务器

1. http 和https在开始行动之前,我们必须先搞清一个问题,http 和https 的区别是什么?要配置https 需要执行哪些步骤的操作?关于http 和https 网上也是有大量的文章来讨论,也是面试时非常常见的一个问题,所以这里就不细讲。简单来说,https 相对于http 的区别就在于https 是使用密文传输,而http 是使用明文传输的,这也是https 比http 更安全的原因。既然是密文传输,那么是用什么进行加密的?加密操作是由服务器主导的,那我们又凭什么相信服务器不是由坏人冒充的?这就是https 要解决的事情。具体细节可参考: https 原理详解

      看完以上加密细节操作可以得出一个阶段性的结论,要完成https 的配置实际上就是在服务器上安装一个由CA(公信机构)颁发的证书和一对非对称秘钥(包含公钥和私钥)。于是在小程序应用中完成https 的配置流程可以概括为以下几步:获取证书、在服务器上安装证书、小程序后台添加合法域名

1. 域名

在万网购买,略

 

2. 云服务器

阿里云购买,略

 

3. 安装lnmp

使用lnmp.org程序,略

 

4. 申请证书

阿里云-管理控制台-安全(云盾)-证书服务-购买证书
证书类型: 免费型DV SSL
选择品牌: Symantec

购买成功后,绑定域名,配置DNS解析记录生效

 

5. 配置HTTPS服务器

Nginx的安装目录下创建cert目录
下载证书,放到cert目录
修改nginx.conf文件,加入443端口及证书目录

复制代码
server
    {
        listen 80;
        listen 443 ssl;
        #listen [::]:80;
        server_name cet.fangbei.org;
        index index.html index.htm index.php default.html default.htm default.php;
        root  /home/wwwroot/cet.fangbei.org;

        include none.conf;
        #error_page   404   /404.html;
        include enable-php.conf;

        ssl_certificate /usr/local/nginx/cert/214130435490250.pem;//----------------
        ssl_certificate_key /usr/local/nginx/cert/214130435490250.key;//--------------

        location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$
        {
            expires      30d;
        }

        location ~ .*\.(js|css)?$
        {
            expires      12h;
        }

        location ~ /\.
        {
            deny all;
        }

        access_log off;
    }

复制代码

重启lnmp即可。

 

6. 使用https访问网站

支持80端口和443访问

http://cet.fangbei.org/

https://cet.fangbei.org/

https访问时,可以看到证书

 

 

posted on 2019-02-28 11:59  泽一年  阅读(725)  评论(0编辑  收藏  举报

导航