赞
踩
应用场景:通过Https来访问Tomcat的项目
一、需要提前准备:
1、域名
2、阿里云ssl证书(可在阿里云免费申请证书,申请证书需要域名)
二、实现思路:
通过本地的Tomcat配置https进行验证
我的域名还在走流程,所以找了一个其他项目域名和证书来模拟测试,域名就不放出来了,后续也会打码(注:要在阿里云下载Tomcat的证书)
因为是其他项目的域名,所以需要通过host重定向域名指向本机ip(这里我把一级和二级域名都指向了本机),233是我的本机
文件保存后通过 ipconfig /flushdns刷新一下DNS解析缓存
然后通过ping来验证域名是否指向本机
三、Tomcat配置Https
1、证书存放
在Tomcat目录下创建certificate目录(目录名自定)存放证书
zip就是阿里云下载的证书压缩包(压缩包解压后就没用了这里只是给大家展示下),里面就两个文件:
.pfx文件是证书
pfx-password.txt 文件里是证书的密码
2、修改Tomcat的conf/server.xml配置文件,我把整个server.xml文件都贴出来了
- <?xml version='1.0' encoding='utf-8'?>
- <Server port="8005" shutdown="SHUTDOWN">
- <Listener className="org.apache.catalina.startup.VersionLoggerListener" />
- <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
- <Listener className="org.apache.catalina.core.JreMemoryLeakPreventionListener" />
- <Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener" />
- <Listener className="org.apache.catalina.core.ThreadLocalLeakPreventionListener" />
-
-
- <GlobalNamingResources>
- <Resource name="UserDatabase" auth="Container"
- type="org.apache.catalina.UserDatabase"
- description="User database that can be updated and saved"
- factory="org.apache.catalina.users.MemoryUserDatabaseFactory"
- pathname="conf/tomcat-users.xml" />
- </GlobalNamingResources>
-
- <!-- port端口:https默认443,可根据自己的需求调整如果非443需要在域名后面加端口 -->
- <!-- keystoreFile证书文件路径 -->
- <!-- keystorePass证书密码,在pfx-password.txt中拷贝 -->
- <Service name="Catalina">
- <Connector port="443" protocol="org.apache.coyote.http11.Http11Protocol"
- maxThreads="150" SSLEnabled="true" scheme="https" secure="true"
- clientAuth="false" sslProtocol="TLS" keystoreType="PKCS12" keystoreFile="certificate/xxx.cn.pfx" keystorePass="******"
- SSLProtocol="TLSv1+TLSv1.1+TLSv1.2"
- ciphers="TLS_RSA_WITH_AES_128_CBC_SHA,TLS_RSA_WITH_AES_256_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA,TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_128_CBC_SHA256,TLS_RSA_WITH_AES_256_CBC_SHA256"
- />
-
- <Connector port="8009" protocol="AJP/1.3" redirectPort="443" />
-
- <Engine name="Catalina" defaultHost="localhost">
-
- <Realm className="org.apache.catalina.realm.LockOutRealm">
-
- <Realm className="org.apache.catalina.realm.UserDatabaseRealm"
- resourceName="UserDatabase"/>
- </Realm>
-
- <Host name="localhost" appBase="webapps"
- unpackWARs="true" autoDeploy="true">
-
- <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
- prefix="localhost_access_log" suffix=".txt"
- pattern="%h %l %u %t "%r" %s %b" />
-
- </Host>
- </Engine>
- </Service>
- </Server>
配置修改完成后,启动Tomcat再浏览器通过https+域名进行验证
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。