背景:小程序调用的数据接口要求必须走https,阿里云管理的域名可以免费申请一个ssl,所以就使用免费的即可
工具:Tomcat7
步骤:
1、从阿里云中下载tomcat版本的相关文件
2、在tomcat的安装目录下创建cert目录,并将下载的全部文件拷贝到cert目录下
3、在cert路径下使用cmd运行以下代码
openssl pkcs12 -export -out 你自己的.pfx -inkey 你自己的.key -in 你自己的.pem
4、运行命令后会要求设置证书密码
5、配置tomcat的server.xml文件,找到prot="8443"标签,增加以下属性:
keystoreFile="cert/你自己的.pfx"
keystoreType="PKCS12"
keystorePass="证书密码"
6、完整的配置如下(如果希望http和https都能访问,加上下面这段即可):
<Connector port="8443"
protocol="HTTP/1.1"
SSLEnabled="true"
scheme="https"
secure="true"
keystoreFile="cert/你自己的.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"/>
7、以上是官方的教程,此时可能会报一个错
严重: Failed to initialize end point associated with ProtocolHandler ["http-apr-8443"]
java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR
将tomcat中的protocol属性改成org.apache.coyote.http11.http11protocol
重启tomcat应该就可以了。