我正在使用servlet 3.0和Jetty編寫HTTPS代理服務器。攔截Jetty中的HTTP Connect
如何在jetty中處理HTTPS Connect?
目前我使用jetty-maven-plugin
和我的插件配置看起來像這 -
<groupId>org.mortbay.jetty</groupId>
<artifactId>jetty-maven-plugin</artifactId>
<configuration>
<scanIntervalSeconds>10</scanIntervalSeconds>
<webApp>
<contextPath>/</contextPath>
</webApp>
<scanIntervalSeconds>1</scanIntervalSeconds>
<connectors>
<connector implementation="org.eclipse.jetty.server.nio.SelectChannelConnector">
<port>9090</port>
<maxIdleTime>60000</maxIdleTime>
</connector>
<connector implementation="org.eclipse.jetty.server.ssl.SslSelectChannelConnector">
<port>9090</port>
<keystore>src/keystore.jks</keystore>
<keyPassword>test</keyPassword>
<password>test</password>
</connector>
</connectors>
</configuration>
/plugin>
是 - 我要處理HTTP和HTTPS在同一個端口。當我開始碼頭,它開始只是細
2013-04-21 15:15:03.750:INFO:oejs.AbstractConnector:Started [email protected]:9090
2013-04-21 15:15:03.912:INFO:oejus.SslContextFactory:Enabled Protocols [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2] of [SSLv2Hello, SSLv3, TLSv1, TLSv1.1, TLSv1.2]
2013-04-21 15:15:03.917:INFO:oejs.AbstractConnector:Started [email protected]:9090
Started Jetty Server
我已經在@Override的doGet和doPost和這兩種方法火就好了,當我發送HTTP請求。但是,當客戶端發送HTTPS Connect時,它們都不會被觸發。我想攔截HTTPS Connect,以便檢查SSL流量。
任何想法如何使它工作?
更新 - 我想我找到了第一個問題。即使我在日誌中看到SelectChannelConnector和SslSelectChannelConnector在端口9090上啓動,SSL連接器也未被觸發。
所以我是 - 的問題是有可能使用的servlet 3.0和Jetty來處理HTTP和HTTPS同一端口上?
碼頭或者是精確的JVM拋出AddressAlreadyInUseException當您嘗試在碼頭9同一端口上配置兩個連接器符合市場預期。 – 2013-04-22 11:01:41
除了在某些版本的Windows上,顯然允許您打開兩次相同的端口..這只是錯誤和破碎,此外,http和https不應該在同一個端口上運行 – 2013-04-22 12:17:33
Downvoted,因爲它實際上是可能的。 – 2014-07-22 15:12:39