首先是tomcat的配置,需要使用jdk自带的keytool来生成证书,如果已配置java环境变量,在任何目录启动命令行输入以下命令即可,若未配置java环境变量,则需要到jdk安装目录bin文件夹下启动命令行.

keytool -genkeypair -alias tomcat -keyalg RSA -keystore D:\tomcat.key 
//其中-alias是证书的别名,RSA是加密算法,-keystore后是输出证书的路径所在

执行该命令后,会要求输入库密码,姓名…等等信息,y确认后,要求输入密钥密码,如果想和密钥库密码相同,则直接回车,如果想要不同,则输入密钥密码,但是在tomcat的server.xml中需要另加配置

找到tomcat安装目录,在conf文件夹下找到server.xml,加入如下配置

<Connector URIEncoding="UTF-8" port="7777" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true"
           maxThreads="150" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS" keystoreFile="D:/tomcat.key"
keystorePass="akalin" /> 
<!--其中URIEncoding="UTF-8"是将get请求的编码变成UTF-8,port是端口号,keystoreFile是证书路径,keystorePass则是证书密码(如果密钥密码和密钥库密码一样的话)-->

然后是web.xml的配置,找到javaweb项目的web.xml文件,在其中加上如下配置

<security-constraint>   
   <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>   
   <!--如果想关闭SSL则将CONFIDENTIAL改为NONE-->

原文链接:https://blog.csdn.net/ai15134626825/article/details/78565948/