一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

tomcat9-https与IDEA的配置实践

时间:2026-06-30 10:53:53 编辑:袖梨 来源:一聚教程网

一.  创建tomcat证书

这里使用JDK自带的keytool工具来生成证书:

1. 在jdk的安装目录binkeytool.exe下打开keytool.exe

tomcat9(https)与IDEA的配置实践

2. 在命令行中输入以下命令

keytool -genkeypair -alias "tomcat" -keyalg "RSA" -keystore "g:tomcat.keystore"  

tomcat9(https)与IDEA的配置实践

以上命令将生产一对非对称密钥和自我签名的证书g:tomcat.keystore

注意:“名字与姓氏”应该是域名,输成了姓名,和真正运行的时候域名不符,会出问题

这里我输入的密码是123456,  域名是以tomcat为例,  省市以广东深圳为例

keytool工具介绍

  • -genkey      在用户主目录中创建一个默认文件".keystore",还会产生一个mykey的别名,mykey中包含用户的公钥、私钥和证书
  • -alias       产生别名
  • -keystore    指定密钥库的名称(产生的各类信息将不在.keystore文件中)
  • -keyalg      指定密钥的算法 (如 RSA  DSA(如果不指定默认采用DSA))
  • -validity    指定创建的证书有效期多少天
  • -keysize     指定密钥长度
  • -storepass   指定密钥库的密码(获取keystore信息所需的密码)
  • -keypass     指定别名条目的密码(私钥的密码)
  • -dname       指定证书拥有者信息
  • -list        显示密钥库中的证书信息      keytool -list -v -keystore 指定keystore -storepass 密码
  • -export      将别名指定的证书导出到文件
  • -file        参数指定导出到文件的文件名
  • -delete      删除密钥库中某条目 
  • -printcert   查看导出的证书信息  
  • -keypasswd   修改密钥库中指定条目口令
  • -storepasswd  修改keystore口令 
  • -import          将已签名数字证书导入密钥库
  • -certreq            生成证书请求
  •  -changealias        更改条目的别名
  •  -delete             删除条目
  •  -exportcert         导出证书
  •  -genkeypair         生成密钥对
  •  -genseckey          生成密钥
  •  -gencert            根据证书请求生成证书
  •  -importcert         导入证书或证书链
  •  -importpass         导入口令
  •  -importkeystore     从其他密钥库导入一个或所有条目
  •  -keypasswd          更改条目的密钥口令
  •  -list               列出密钥库中的条目
  •  -printcert          打印证书内容
  •  -printcertreq       打印证书请求的内容
  •  -printcrl           打印 CRL 文件的内容
  •  -storepasswd        更改密钥库的存储口令
  • keytool -importkeystore [OPTION]...
  • 从其他密钥库导入一个或所有条目
  • -srckeystore             源密钥库名称
  •  -destkeystore           目标密钥库名称
  •  -srcstoretype           源密钥库类型
  •  -deststoretype          目标密钥库类型
  •  -srcstorepass                源密钥库口令
  •  -deststorepass               目标密钥库口令
  •  -srcprotected                  受保护的源密钥库口令
  •  -srcprovidername     源密钥库提供方名称
  •  -destprovidername   目标密钥库提供方名称
  •  -srcalias                   源别名
  •  -destalias                 目标别名
  •  -srckeypass                      源密钥口令
  •  -destkeypass                     目标密钥口令
  •  -noprompt                         不提示
  •  -providerclass         提供方类名
  •  -providerarg                     提供方参数
  •  -providerpath               提供方类路径
  •  -v            显示密钥库中的证书详细信息

二. 配置tomcat服务器

 定位到tomcat服务器的安装目录, 找到conf下的server.xml文件

tomcat9(https)与IDEA的配置实践tomcat9(https)与IDEA的配置实践

<!--     <Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"                maxThreads="150" scheme="https" secure="true"                clientAuth="false" sslProtocol="TLS" />     -->

去掉注释,修改为:

<Connector port="8443"  protocol="HTTP/1.1" SSLEnabled="true"               maxThreads="150" scheme="https" secure="true"               clientAuth="false" sslProtocol="TLS"        keystoreFile="/home/weblogic12/apache-tomcat-cnooc/ssh/tomcat.keystore"        keystorePass="changeit" />

tomcat9(https)与IDEA的配置实践

三. 启动tomcat服务器

在浏览器中输入: https://localhost

tomcat9(https)与IDEA的配置实践

修改web.xml文件

Http自动跳转Https

①编辑conf/web.xml文件

②在web.xml末尾加上如下配置,直接在节点下和同级:

<!--开启http强制跳转https访问-->      <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>

修改sever.xml文件

修改非SSL连接器的请求跳转到SSL连接器上,修改如下配置:

原来为:    <Connector port="8080" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="8443" />修改为:    <Connector port="80" protocol="HTTP/1.1"               connectionTimeout="20000"               redirectPort="443" />

1、将默认8080端口修改为80端口,访问时就不需要加8080端口了,因为HTTP协议默认走的是80端口

2、将8443端口修改为443端口,意思是来自80端口的请求都跳转至443端口

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持本站。

您可能感兴趣的文章:
  • tomcat9使用指定的JDK版本完整步骤记录
  • idea2019配置Tomcat9全过程
  • 如何解决点击 tomcat9.exe闪退的问题
  • tomcat9 下载安装和配置+整合到eclipse的教程详解

热门栏目