- 【Node.js】socket.io + cluster で 400 (Bad Request) + Connection closed before receiving a handshake responseAdd Star
- Engine.IO: the realtime enginef
- engine.io-parser
- Engine.IO client
- Engine.IO Protocol
- socket.io
PHP SocketIOClient.php On socket.io 1.3.7 Error
Bad Request
socket.io 1.3.7 에서 php_io.php 라이브러리로 연결시 아래 에러가 발생한다.# Nodejs 5.1.0 + socket.io 1.3.7 engine intercepting request for path "/socket.io/" +12m engine handling "GET" http request "/socket.io/1" +0ms engine unknown transport "undefined" +0ms # PHP Fatal error: Uncaught exception 'RuntimeException' with message '{"code":0,"message":"Transport unknown"}' in /Users/uncaose/workspace/marsh/web/application/libraries/socketIOClient/SocketIOClient.php:97
PHP의 SocketIOClient.php 수정
# curl_setopt을 사용하면 {“code”:3,”message”:”Bad request”} $this->socketIOUrl = str_replace(array("'", '"', """), array('', '', ''), $socketIOUrl) . '/' . $socketIOPath . '/?EIO=' . (string) $protocol.'&transport=websocket'; # curl_setopt을 사용하면 {“code”:2,”message”:”Bad handshake method”} # curl_setopt($ch, CURLOPT_POSTFIELDS, Array('transport'=>'websocket'));
# Nodejs 5.1.0 + socket.io 1.3.7 engine intercepting request for path "/socket.io/" +2m engine handling "GET" http request "/socket.io/?EIO=1&transport=websocket" +1ms engine handshaking client "S0BIR0sGUiAnRERqAAAB" +0ms # PHP Fatal error: Uncaught exception 'RuntimeException' with message 'Protocol ws not supported or disabled in libcurl' in /Users/uncaose/workspace/marsh/web/application/libraries/socketIOClient/SocketIOClient.php:84
연결방식을 명시적으로 설정하지 않으면 여러 방식을 연결될 때 까지 시도한다.
결국은 PHP socket.io 클라이언트 프로그램을 새롭게 개발해야 하거나 다른 Lib를 이용한다.반응형
'lang > php' 카테고리의 다른 글
Composer Install (0) | 2016.03.30 |
---|---|
CodeIgniter Stright layout lib - view, js, css 한번에 사용 (0) | 2016.03.24 |
동영상 업로드 (0) | 2015.08.21 |
PHP 웹 사이트 IDE 개발툴 (0) | 2015.06.01 |
window xampp 속도문제 - 가속엔진이 없을 경우 (0) | 2015.05.29 |