http://www.wxapp-union.com/forum.php?mod=viewthread&tid=394
Tomcat启用HTTPS协议配置过程
http://blog.csdn.net/gane_cheng/article/details/53001846
Tomcat 域名绑定
http://www.cnblogs.com/weiguo21/p/4824020.html
Tomcat启用HTTPS协议配置过程
http://blog.csdn.net/gane_cheng/article/details/53001846
扫描二维码关注公众号,回复:
291578 查看本文章
http://blog.csdn.net/zhaoyazhi2129/article/details/53941396
配置ssl时,如果报如下错误:
java.lang.Exception: Connector attribute SSLCertificateFile must be defined when using SSL with APR
仔细看上面的异常信息发现这是APR报的错误。Tomcat 6也有APR包但我从来都没用过。为此查看了Tomcat的ssl-how,在“Edit the Tomcat Configuration File”一节中说到:
- Tomcat提供了两个SSL实现,一个是JSSE实现,另一个是APR实现。
- Tomcat将自动选择使用哪个实现,即如果安装了APR则自动选择APR,否则选择JSSE。
- 如果不希望让Tomcat自动选择,而是我们自己指定一个实现则可通过protocol定义,如下:
以前只听说过APR但没弄过。APR是什么文件?后来才发现APR文件名为tcnative-1.dll。进一步检查6.0和7.0的安装目录,结果发现6.0里没这个dll文件,而7.0里有。换句话说,6.0默认使用JSSE实现,而7.0默认使用APR实现。
弄明白缘由就好办了。由于习惯使用6.0的配置方式(即JSEE实现),因此只要把上面conf\server.xml里的protocol修改一下就行了:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="${user.home}/.keystore" keystorePass="changeit" />