第一步:Ubuntu安装apache、openssl(不多说)
第二步:开启SSL模块
$sudo a2enmod ssl
第三步:创建证书
证书分两种:
1、自签(这就不说了,也是自己创建证书,用https进入会出现提示,微信直接https访问不了。这个网上多,一查就是)
2、第三方(今天主要说这个,可以微信访问)
生成证书:
运行openssl req -new -newkey rsa:2048 -nodes -keyout mini-app.key -out mini-app.csr,会在当前目录生成两个文件,名字可以自定义。
第四步:购买ssl证书
证书类型有多种,根据不同情况购买OV、DN、EV,自己看说明,根据情况购买
有的可能不知道在那买,那里便宜,我推荐一下到godaddy去购买,便宜,网上还有一些它的优惠码可以用,阿里云的我也看了一下,太贵了,同鞋们自己对比一下,那里买,自己决定。
第五步:域名配置
购买根据流程自己操作,遇到需要csr证书的,第三步已经生成,直接使用,购买完成审核通过之后会给你一个记录值,根据他的说明,在服务器添加域名解析。
第六步:上传文件
购买成功,他会有一个地方可以下载文件 ,根据服务器进行下载。下载完成会得到一个安装包,打开其中有一个crt文件:
上传到/etc/ssl/certs/下。
第三中生成的两个文件,把其中的key文件传到服务器/etc/ssl/private/
第七步:添加 apache配置文件
运行sudo cp /etc/apache2/sites-enabled/000-default /etc/apache2/sites-enabled/001-ssl复制一份配置文件
运行sudo vim 001-ssl编辑
在<VirtualHost *:80>段中,DocumentRoot一行的下方加入内容:
SSLEngine On
SSLOptions +StrictRequire
SSLCertificateFile /etc/ssl/certs/server.crt
SSLCertificateKeyFile /etc/ssl/private/server.key
端口修改为:443,即<VirtualHost *:443>(ssl的端口)
第八步:重启
重启服务器:sudo /etc/apache2/init.d/apache2 restart
OK,问题解决。