条件:通过自己公司的域名在阿里云解析出一个test.zxx.xx的二级域名指向一台线上开发环境服务器,以此为开发小程序后台
作为一个小白,完全不明白阿里云上面说的nignx和tomcat指的是负载均衡用的服务器还是项目跑的服务器,结果一统乱试也没弄好。
首先,先通过阿里云申请一个免费的ssl证书,绑定到之前自己解析的域名上,然后没多久就会审核通过;第二步,我所用的项目是公司之前买的打的war包,使用外部tomcat,(我后来意识到ssl证书配置不同服务器可能就是项目所在服务器),搭建好以后;第三步,就是把阿里云上的ssl证书的tomcat格式的下载下来,然后按照阿里云上提供的方式,在tomcat文件目录下创建一个cert文件夹解压,会有一个.pfx文件盒一个.txt密码;第四步找到安装Tomcat目录下该文件server.xml,一般默认路径都是在 conf 文件夹中。找到 <Connection port=”8443”标签,增加如下属性:
keystoreFile="cert/200613478180598.pfx"
keystoreType="PKCS12"
#此处的证书密码,请参考附件中的密码文件或在第1步中设置的密码
keystorePass="证书密码"
完整的配置如下,其中port属性根据实际情况修改:
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/a.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"
clientAuth="false"
SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"/>
配置完后,我启动tomcat服务访问https://localhost:8080/项目名/login/store发现不行,当时没想到是8443,后来再次访问https://localhost:8443/项目名/login/store发现也不行,而且看到tomcat日志报异常大概是.pfx的配置有问题,后面还有系统找不到对应文件,然后我将pfx按照阿里云上的配置用jdk转换成jks文件,并将其绝对路径替换keystoreFile="cert/a.pfx",重启服务(详情可见https://help.aliyun.com/knowledge_detail/95496.html?spm=a2c4g.11186623.2.14.7d514c074tYlmd)。没有报错,访问https://localhost:8443/项目名/login/store能进入页面,但是https的框是红色的,可能还有点问题,但是已经可以通过这样进行域名https进行访问了。