서버의 django channels-examples에서 multichat 프로젝트를 실행하려고합니다. 그것은 윈도우 머신에서 로컬로 작동하지만 난의 runserver와 리눅스 서버에이를 넣고 그것을 시작할 때 그렇지 않습니다 다음 JS 즉시 다음django 채널 websocket 연결이 작동하지 않습니다.
./manage.py runserver
을 나는 웹 사이트를 호출 할 때, 제대로 표시되어 있지만 난 항상이 reponse를 얻을 요청 웹 소켓을 보냅니다
[2016/08/02 14:35:48] HTTP GET /chat/stream/ 404 [0.04, 127.0.0.1:40186]
....(many lines of this)
는 그래서 웹 소켓 요청이 HTTP 요청으로 처리됩니다. 응답은 다음과 같아야합니다.
[2016/08/02 16:34:45] WebSocket CONNECT /chat/stream/ [127.0.0.1:60250]
실마리가 없습니다. 웹 소켓 대 HTTP의 라우팅은 다프네 내부 어딘가에 깊은 할 것으로 보인다/트위스트/...
내 채널 설정 (즉, 전혀 도움이있는 경우)은 다음과 같습니다
가CHANNEL_LAYERS = {
"default": {
"BACKEND": "asgi_redis.RedisChannelLayer",
"CONFIG": {
"hosts": [(redis_host, 62031)],
},
"ROUTING": "multichat.routing.channel_routing",
},
}
트위스트 버전은 16.2입니다 .0.
어떤 방향으로 어떤 도움말이나 힌트를 주시면 감사하겠습니다.
나는 이것을 runserver와 함께 실행하고있다. 그러나 django-channels은 runserver 명령을 daphne과 worker를 시작하는 runserver 명령으로 겹쳐 쓴다. 포트가 실제로 문제 일 수 있습니다. 실패한 요청마다 다른 포트가 표시됩니다. 또한 액세스 할 수없는 포트가 있습니다. 그러나 나는 그 포트 번호가 어디에서 오는 것인지 전혀 모른다. –
실제로 표시된 포트 번호는 의미가 없어야합니다.이 요청은 다음과 같이 작동합니다 : [2016/08/03 07:47:51] HTTP /static/css/style.css 200 [0.02, 127.0.0.1:53294] 문제가 있습니다. 그것은 http로 ws 요청을 처리하는 것으로 보인다. –