本文共 2670 字,大约阅读时间需要 8 分钟。
配证书: Getting Tomcat SSL (https) Working 1.Create a certificate keystore containing a single self-signed certificate by executing the following command. Specify a password value of "changeit ". Note that this command creates both the certificate and the keystore Windows: 进到%JAVA_HOME%\bin\目录下输入: keytool -genkey -alias tomcat -keyalg RSA -keystore tomcat.keystore 产生一个tomcat.keystore 文件 Unix: $JAVA_HOME/bin/ 输入: keytool -genkey -alias tomcat -keyalg RSA -keystore tomcat.keystore 到D:\Tomcat 5.0\conf目录下输入: keytool -genkey -alias tomcat -keyalg RSA -keystore tomcat.keystore 输入keystore密码: changeit 您的名字与姓氏是什么? [Unknown]: localhost 您的组织单位名称是什么? [Unknown]: huawei 您的组织名称是什么? [Unknown]: hell 您所在的城市或区域名称是什么? [Unknown]: hangzhou 您所在的州或省份名称是什么? [Unknown]: zhejiang 该单位的两字母国家代码是什么 [Unknown]: ch CN=localhost, OU=wict, O=hell, L=wuhan, ST=hubei, C=ch 正确吗? [否]: y 输入 <tomcat> 的主密码 (如果和 keystore 密码相同,按回车): 这里我按了回车 2. Copy the keystore file to CATALINA_HOME/conf 拷贝到tomcat的conf下 3. Uncomment the "SSL HTTP/1.1 Connector " entry in $CATALINA_HOME/conf/server.xml. Your entry should look like: <!-- Define a SSL Coyote HTTP/1.1 Connector on port 8443 --> <!----> <Connector port="8443" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" disableUploadTimeout="true" acceptCount="100" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" keystoreFile= "/conf/tomcat.keystore " truststoreFile= "/conf/tomcat.keystore "/> 添加后保存,浏览其中输入以下地址访问tomcat首页 https://localhost:8443 4. Copy the keystore file to the default file location of the Java Applications, then run the Java Application。 拷贝到工程目录下,注意,直接再工程这级目录下面。 5、java代码:public static void main(String[] args) throws Exception { //serverkeys是通过keytool生成的自己的证书 System.setProperty( "javax.net.ssl.trustStore", "tomcat.keystore"); System.setProperty( "javax.net.ssl.trustStorePassword", "changeit"); //connect to https https://www.sun.com URL url = new URL( "https://localhost:8443"); HttpURLConnection connection = (HttpURLConnection) url.openConnection(); connection.setRequestMethod( "POST"); connection.setDoOutput(true); connection.setDoInput(true); System.out.println( "1--Conected to "+ connection.toString()); DataOutputStream(connection.getOutputStream()); StringBuffer outbuff = new StringBuffer(); BufferedReader in = new BufferedReader(new InputStreamReader(connection.getInputStream())); String line; while ((line = in.readLine()) != null) { outbuff.append(line); } in.close(); System.out.println( "3---Test : " + outbuff.toString()); }
转载地址:http://dgqmi.baihongyu.com/