当https的网站调用http的后台接口时,必须让后台的接口也是变成https的,否则前端报错.要使用keytool生成证书需要先安装jdk.
1.生成证书
windows下打开控制台,进入到jdk的bin目录下,输入命令:keytool -genkey -alias "test" -keyalg "RSA" -keystore "D:\Java\test.keystore" -dname "CN=localhost,OU=localhost,O=localhost,L=SH,ST=SH,C=CN" -keypass "123456" -storepass "123456" -validity "36500" 回车;
linux环境下,控制台进入到jdk的bin目录下,输入命令:./keytool -genkey.......其他和windows相同
参数:
alias:别名,可自由修改
keyalg:加密方式,RSA,DSA,不指定默认为DSA
keystore:生成的证书存放位置
dname:证书的相关信息
CN:名字与形式
OU:组织单位名称
O:组织机构名称
L:城市信息
ST:省份信息
C:国家信息
keypass:证书加密的密码
storepass:证书解密密码
validity:有效期,单位是天数
2.证书信息查看
keytool -list -v -keystore D:\Java\test.keystore -storepass 123456
3.证书导出
keytool -export -alias yushan -keystore D:\Java\test.keystore -file D:\Java\test..crt(指定导出的证书位置及证书名称) -storepass 123456
4.配置tomcat
若只是测试或本机调用,可不用导出证书,生成证书即可.
打开tomcat目录下的conf/server.xml文件

此处本来是已经注释了,需要打开,若是像要保留8443的端口,可将其更改.打开注释后,其他的属性基本不用该,需要加2个属性,keystoreFIle指定证书存放位置,keystorePass指定证书密码.完成之后需要其他的端口可指向这个端口,也可不指向他
打开tomcat下的conf/web.xml文件,在文件的最下面加上如下属性节点

之后重启tomcat,即可让https的网站调用后台接口
网友评论