網頁

2017/10/24

Eclipse SVN checkout連線時出現E175002: handshake alert: unrecognized_name錯誤

如果你的Eclipse在使用SubVersion checkout專案時出現以下錯誤的解決方式如下。

E175002: Connection has been shutdown: javax.net.ssl.SSLProtocolException: handshake alert: unrecognized_name svn: E175002: OPTIONS request failed on [URL]


用記事本開啟Eclipse資料夾的eclipse.ini檔,在最後一行加入-Djsse.enableSNIExtension=false即可解決此問題。

此問題通常發生在Eclipse使用jdk1.7來開啟,因為Java 7引入了Server Name Indication (SNI),但svn伺服器不支援SNI而導致無法連線。

SNI(伺服器名稱指示)是為了解決一個伺服器在同個IP下可同時擁有多個SSL/TLS憑證,同一個IP下可有多個HTTPS網站。SNI在客戶端建立與伺服器的SSL連線之前要先發送主機名稱(hostname),然後伺服器根據此主機名稱回傳一個合適的憑證,然而Java 7 SNI extension預設是開啟狀態,所以建立SSL連線handshake時需要取得連線目標的主機名稱。而SNI必須客戶端和伺服器端都要支援才行,即客戶端發送了正確的主機名稱,且伺服器端也做了相映的SNI設定。

所以上面那行指令就是把預設開啟的SNI關閉。

如果覺得文章有幫助的話還幫忙點個Google廣告,感恩。


參考:

沒有留言:

張貼留言