1、不管是app、小程序应用请求,还是web网站应用,api加密请求http都是必不可少的。
2、市场上有收费的加密证书(价格几百到几千一年),也有免费的试用版本,现以免费的阿里云ssl证书配置详解。
3、在阿里控制后台上找到“SSL证书=>免费证书=>创建证书”然后列表中申请证书,填上对应的域名地址,按步骤走就行,一般几分钟就可以。
4、下载对应证书文件,共两个文件(.pem和.key)。解压后重命名(如lmh.pem、lmh.key)放到自己的nginx服务器上,记住路径。为了方便可直接放nginx配置文件同级目录下/usr/local/nginx/conf
5、需要重新编译nginx的sbin应用,因为之前编译的时候是默认参数没有加上ssl模块,否者报错“the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf”。如果已经有加ssl就跳过看下一步即可
a、在nginx可执行目录下(/usr/local/nginx/sbin)执行
./nginx -V //可查看nginx编译参数。下图是有的情况,可以看到configure arguments: 后又有--with-http_stub_status_module --with-http_ssl_module,如果没有的话就得重新编译。
b、进入nginx的源码文件夹(nginx/1.16.0)下,安装模块并且编译:
//安装 ./configure --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module //编译 make //备份原有的nginx执行文件 cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx.bak //回到sbin文件下关闭当前启动的nginx服务不然替换会报错,文件正在使用 ./nginx -s stop //复制刚编译生成的配置覆盖原有的配置 cp ./objs/nginx /usr/local/nginx/sbin/ //启动nginx服务,等等,配置文件还没改呢 ./nginx
6、配置nginx.conf配置文件,找到443端口的对象,取消注释,添加上面下载放到服务器的.pem和.key文件。具体配置如下(红色部分是重点):
./nginx -t //测试配置文件是否通过 ./nginx //启动配置文件
关注公众号“云海生活”获取更多技术分享