我想按照中所述使用 ssl/https
http://docs.codehaus.org/display/JETTY/How+to+configure+SSL
使用jetty-maven-plugin,但我不知道如何配置插件。任何提示、示例、教程、演练?
此外,我想知道如何执行上述教程的步骤 3b,其中需要操作 jetty 服务器(java -classpath $JETTY_HOME/lib/jetty-util-6.1-SNAPSHOT.jar:$JETTY_HOME/lib/jetty-6.1-SNAPSHOT.jar org.mortbay.jetty.security.PKCS12Import jetty.pkcs12 keystore
).
最佳答案
您可以使用 Maven 创建开发证书并在启动 Jetty 时使用它。首先,配置 keytool-maven-plugin 以创建开发证书:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>keytool-maven-plugin</artifactId>
<executions>
<execution>
<phase>generate-resources</phase>
<id>clean</id>
<goals>
<goal>clean</goal>
</goals>
</execution>
<execution>
<phase>generate-resources</phase>
<id>genkey</id>
<goals>
<goal>genkey</goal>
</goals>
</execution>
</executions>
<configuration>
<keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
<dname>cn=my.hostname.tld</dname><!-- put your CN here-->
<keypass>jetty6</keypass>
<storepass>jetty6</storepass>
<alias>jetty6</alias>
<keyalg>RSA</keyalg>
</configuration>
</plugin>
根据需要更改 CN。然后配置maven-jetty-plugin使用开发证书:
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
<version>6.1.10</version>
<configuration>
<contextPath>/context</contextPath>
<scanIntervalSeconds>5</scanIntervalSeconds>
<connectors>
<connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
<port>8080</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
<connector implementation="org.mortbay.jetty.security.SslSocketConnector">
<port>8443</port>
<maxIdleTime>60000</maxIdleTime>
<keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
<password>jetty6</password>
<keyPassword>jetty6</keyPassword>
</connector>
</connectors>
</configuration>
</plugin>
运行 mvn jetty:run
并打开 https://localhost:8443/context .
关于java - 如何将 https/ssl 与 Maven/Mortbay Jetty 插件一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3794892/