差異處
這裏顯示兩個版本的差異處。
Both sides previous revision 前次修改 下次修改 | 前次修改 | ||
java:supportipv6:java_service_wrapper_cant_start [2020/01/24 12:03] tony [How to resolve?] |
java:supportipv6:java_service_wrapper_cant_start [2023/06/25 09:48] (目前版本) |
||
---|---|---|---|
行 1: | 行 1: | ||
+ | {{tag>java ipv6 Java_Service_Wrapper}} | ||
====== Java Service Wrapper service can't start of pure IPv6 env ====== | ====== Java Service Wrapper service can't start of pure IPv6 env ====== | ||
===== Problem ===== | ===== Problem ===== | ||
行 11: | 行 12: | ||
tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN | tcp 0 0 127.0.0.1:32000 0.0.0.0:* LISTEN | ||
</code> | </code> | ||
- | 從以上結果可以得知,JWS預設是綁定IPv4的127.0.0.1。 | + | 從以上結果可以得知,JWS預設是綁定IPv4的127.0.0.1。於是我開始找尋JWS是否有方法可以設定這些東西,有兩個方法提供給大家。 |
+ | ===== 設定Socket Type ===== | ||
+ | 第一個方法是明確設定要使用IPv6還是IPv4的socket type,然後再給予對應的連線位置: | ||
+ | <code bash> | ||
+ | # For IPv6 | ||
+ | wrapper.port.address=[::1] | ||
+ | wrapper.backend.type=SOCKET_IPv6 | ||
+ | # For IPv4 | ||
+ | wrapper.port.address=127.0.0.1 | ||
+ | wrapper.backend.type=SOCKET_IPv4 | ||
+ | </code> | ||
+ | 我有嘗試過AUTO,但無法解決問題。如果有使用安裝程式的人,這個設定可能會轉嫁在安裝程式上。 | ||
+ | ===== 使用PIPE ===== | ||
+ | 因為前一個方法必須要去偵測並設定,因此我們使用了PIPE的做法,目前看起來也可以解決問題: | ||
+ | <code bash> | ||
+ | wrapper.backend.type=PIPE | ||
+ | </code> | ||
+ | 至於這個做法有沒有side effect,等我們發現了我會再特別記錄。另外需要注意的是,這方法至少要3.5.26以後的版本才可以使用,我覺得我們很幸運。 | ||
===== Reference ===== | ===== Reference ===== | ||
+ | * [[https://wrapper.tanukisoftware.com/doc/english/prop-backend-type.html|JWS configuration - wrapper.backend.type]] | ||
+ | * [[https://wrapper.tanukisoftware.com/doc/english/prop-port.html#address|JWS configuration - wrapper.port.address]] | ||
+ | * [[https://wrapper.tanukisoftware.com/doc/english/release-notes.html#3.5.26|JWS relesae note for 3.5.26]] | ||
===== ===== | ===== ===== |