今天同事要求帮忙配置tomcat ssl,直接把linux下tomcat配置ssl这篇文章发给他了,没想到他居然说启动tomcat的时候,报Connector attribute SSLCertificateFile must be defined when using SSL with APR的错误,马上跑过去看,原来他的tomcat版本是7.0的,我发给他的是tomcat6的,检查了key,检查了配置文件,因为他直接复制的我发他文章的配置,折腾了2-3个小时,终于把问题给解决了.
系统:windows 7
环境:tomcat7
1.先重新给他生成key
keytool -genkey -alias tomcat -keyalg RSAEnter keystore password: password Re-enter new password: password What is your first and last name? [Unknown]: Loiane Groner What is the name of your organizational unit? [Unknown]: home What is the name of your organization? [Unknown]: home What is the name of your City or Locality? [Unknown]: Sao Paulo What is the name of your State or Province? [Unknown]: SP What is the two-letter country code for this unit? [Unknown]: BR Is CN=Loiane Groner, OU=home, O=home, L=Sao Paulo, ST=SP, C=BR correct? [no]: y Enter key password for (RETURN if same as keystore password): password Re-enter new password: password
2.tomcat配置ssl
打开server.xml文件里,他们原来是
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" enableLookups="false" acceptCount="100" disableUploadTimeout="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="Users\loiane/.keystore" keystorePass="password" />
修改为:
<Connector port="8443" protocol="org.apache.coyote.http11.Http11Protocol" SSLEnabled="true" enableLookups="false" acceptCount="100" disableUploadTimeout="true" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile="Users\loiane/.keystore" keystorePass="password" />