1.准备证书生成web
a.进入到jdk下的bin目录(若是配置了Java的环境,能够直接在cmd命令窗口中直接输入以下命令)spring
keytool -v -genkey -alias tomcat -keyalg RSA -keystore d:/tomcat.keystore -validity 36500
附:d:/tomcat.keystore是将生成的tomcat.keystore放到d盘根目录下。
"-validity 36500”含义是证书有效期,36500表示100年,默认值是90天apache
b.输入keystore密码浏览器
密码任意,此处以123456为例,要记住这个密码,以后在进行server.xml配置时须要使用。tomcat
c.输入名字、组织单位、组织、市、省、国家等信息app
注意事项:
A、Enter keystore password:
此处须要输入大于6个字符的字符串
B、“What is your first and last name?”
这是必填项,而且必须是TOMCAT部署主机的域名或者IP[如:gbcom.com 或者 10.1.25.251],
就是你未来要在浏览器中输入的访问地址
C、
“What is the name of your organizational unit?”、单位
“What is the name of your organization?”、组织
“What is the name of your City or Locality?”、市
“What is the name of your State or Province?”、省
“What is the two-letter country code for this unit?”国家
能够按照须要填写也能够不填写直接回车,
在系统询问“correct?”时,对照输入信息,若是符合要求则使用键盘输入字母“y”,不然输入“n”从新填写上面的信息
D、Enter key password for <tomcat>,
这项较为重要,会在tomcat配置文件中使用,
建议输入与keystore的密码一致,设置其它密码也能够eclipse
d.输入以后会出现确认的提示this
此时输入y,并回车。此时建立完成keystore。url
进入到D盘根目录下能够看到已经生成的tomcat.keystore
复制tomcat.keystore 到tomcat/conf/ 下spa
2.在web.xml文件中配置以下,将请求配置成https请求
<servlet> <servlet-name>spring</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping>
<!-- 配置https请求 --> <security-constraint> <web-resource-collection > <web-resource-name >SSL</web-resource-name> <url-pattern>/*</url-pattern> </web-resource-collection> <user-data-constraint> <!-- NONE不支持https请求, CONFIDENTIAL支持https请求 --> <transport-guarantee>CONFIDENTIAL</transport-guarantee> </user-data-constraint> </security-constraint>
2.打开项目的server.xml文件
3.找到文件在自带的注释掉的配置(这是tomcat自己带的配置https的示例)
<!-- <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" /> -->
在下面添加以下配置
<Connector port="8082" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" keystoreFile="D:/ezchargerfile/tomcat v8/apache-tomcat-8.0.0/conf/tomcat.keystore" keystorePass="123456" sslProtocol="TLS"/>
保留你原来经过eclipse可视界面配置的http请求的端口并修改redirectPort="8443"为8082(8443是tomcat默认的收视率端口,你本身配置的https端口):
<Connector connectionTimeout="20000" port="8081" protocol="HTTP/1.1" redirectPort="8082"/>
去掉 redirectPort="8082"(默认的是 redirectPort="8443"),不去掉的话回出现访问http://localhost:8081/VoucherWebService/voucher重定向到https://localhost:8082/VoucherWebService/voucher
或者直接访问https://localhost:8082/VoucherWebService/voucher均可以。
4.配置完成后,能够看以下