1.准备证书
1.1 SSL证书格式
- .DER .CER,二进制文件格式,只保存证书,不保存私钥。
- .PEM,一般是文本格式,可保存证书,可保存私钥。
- .CRT,可以是二进制格式,可以是文本格式,与 .DER 格式相同,不保存私钥。
- .PFX .P12,二进制格式,同时包含证书和私钥,有密码保护。
- .JKS,二进制格式,同时包含证书和私钥,有密码保护。
 这里我们选用jks与pem格式。1.2 申请证书一般可以在域名服务商哪里申请下载。 
 ssl格式转换网站:https://myssl.com/cert_convert.html,可将pem格式转为jks格式2.部署证书如果443端口正常,将下面8443端口改为443端口。 2.1 JKS格式先将jks证书复制到tomcat的conf文件夹 
 将tomcat中conf文件夹下server.xml文件添加(监听80端口一般已经设置):<Connector port="80" redirectPort="8443" connectionTimeout="20000" protocol="HTTP/1.1"/> <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" SSLEnabled="true" maxThreads="150"> <SSLHostConfig> <Certificate type="RSA" certificateKeystorePassword="123456" certificateKeystoreFile="conf/tomcat.jks"/> </SSLHostConfig> </Connector>参数解释: 
 redirectPort="8443":是当有SSL请求时重定位到8443端口,可以修改为443端口,如果443端口没有被占用的话。
 port:指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求。
 certificateKeystorePassword="123456",密码 certificateKeystoreFile="conf/tomcat.jks",证书文件。
 修改完后,重启tomcat.2.2 pem格式先将pem证书复制到tomcat的conf文件夹。 
 将tomcat中conf文件夹下server.xml文件添加(监听80端口一般已经设置):<Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol" maxThreads="150" SSLEnabled="true" > <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> <SSLHostConfig> <Certificate certificateKeyFile="conf/localhost-rsa-key.pem" certificateFile="conf/localhost-rsa-cert.pem" certificateChainFile="conf/localhost-rsa-chain.pem" type="RSA" /> </SSLHostConfig> </Connector>将localhost-rsa-cert.pem修改为证书名称。修改完后,重启tomcat. 2.3 http强制跳转https在conf目录web.xml文件中添加: <login-config> <!-- Authorization setting for SSL --> <auth-method>CLIENT-CERT</auth-method> <realm-name>Client Cert Users-only Area</realm-name> </login-config> <security-constraint> <!-- Authorization setting for SSL --> <web-resource-collection > <web-resource-name >SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>3.查看证书是否部署成功
 由于这里证书已过期,所以https为红色。之后放行8443端口,原来的网站应该可以使用https访问。4.server.xml文件项目配置其它目录,添加: <Context docBase="C:\upload" path="/upload"/>5.查看端口占用查找所有运行的端口 netstat -ano查看被占用端口对应的 PID netstat -aon|findstr "80"查看指定 PID 的进程 tasklist|findstr "9988"结束进程 
 强制(/F参数)杀死 pid 为 9988 的所有进程包括子进程(/T参数):taskkill /T /F /PID 9988






