为了账号安全,请及时绑定邮箱和手机立即绑定

Tomcat 配置Https服务实例和遇到的问题

标签:
Java

1、生成证书秘钥

先参考网上实例,使用命令生成证书。

keytool -genkey -alias mykeystore -keyalg RSA -validity 30000 -keypass mypass -keystore E:/mykeystore.keystore

此命令应该是将密码直接添加到命令中,没有让二次确认。但是最后生成的证书在Tomcat7下不管用。继续查找资料,第二次使用以下命令在Tomcat目录下执行:

keytool -genkeypair -alias mykeystore -keyalg "RSA" -keystore mykeystore.keystore

生成过程中需要二次确认密码,但是最终生成的证书文件可以用。

2、配置Server.xml文件

<!--
    <Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol"
               maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
               clientAuth="false" sslProtocol="TLS" />
-->

只需要将注释打开,将文件地址和密码增加上即可。端口号如果要改记得和下面AJP/1.3的保持一致。
修改后如下:

<Connector port="2333" protocol="org.apache.coyote.http11.Http11Protocol"
           maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
           clientAuth="false" sslProtocol="TLS"
           keystoreFile="D:/Servers/Tomcat/tomcat7.0/mykeystore.keystore"
           keystorePass="mypass" />
<!-- 如果端口修改则AJP/1.3的映射也要改 -->
<Connector port="8009" protocol="AJP/1.3" redirectPort="2333" />

3、出现的问题

如果启动之后出现以下异常
异常信息

我是因为Tomcat的header缓冲区大小不够,只需要在server.xml中增加maxHttpHeaderSize字段即可:

<Connector connectionTimeout="20000" maxHttpHeaderSize="8999" port="8080" protocol="HTTP/1.1" redirectPort="8443"/>
点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
JAVA开发工程师
手记
粉丝
1
获赞与收藏
2

关注作者,订阅最新文章

阅读免费教程

  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消