클라이언트 컴퓨터가 연결되는 서버가 있습니다. 최근 stunnel과의 연결을 암호화하기로 결정 했으므로 이제 클라이언트 프로그램은 서버에 직접 연결하지 않고 localhost : 8045에 연결합니다 (이 포트는 점유되지 않았습니다).localhost에 대한 연결이 거부되는 이유는 무엇입니까?
자바 코드 :
URL url = new URL("http://localhost:8045/malibu/GetProviders");
InputStream stream = url.openStream();
그리고 난 다음 리스팅 :
java.net.ConnectException: Connection refused: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:366)
at java.net.Socket.connect(Socket.java:519)
at java.net.Socket.connect(Socket.java:469)
at java.net.Socket.<init>(Socket.java:366)
at java.net.Socket.<init>(Socket.java:180)
. . .
내가 curl
를 사용하여 동일한 페이지를 요청하려고하면, 모든 것이 괜찮습니다.
이러한 문제가 발생할 수있는 이유는 무엇입니까?
이편집 : 예, 청취 소켓이 - netstat -avn | grep 8045
실행이 제공 :
tcp6 0 0 ::1:8045 :::* LISTEN
URL에서 https : //를 시도한 적이 있습니까? –
@Dave : 스턴넬이 작동하는 방식이 아닙니다. (2)이 오류는 명백히 응용 프로그램 수준 협상 오류가 아닌 TCP 수준 연결 거부입니다. – cdhowie
URL에서 IP를 사용해보십시오. – nIKUNJ