首页 > 解决方案 > Apache - (104)Connection reset by peer: [client xxxx:4712] AH03308: ap_proxy_transfer_between_connections: error on sock - ap_get_brigade

问题描述

我有一个部署到弹性 beantalk 的 django 应用程序:

http://django-env.eba-bcvm9cxz.us-west-2.elasticbeanstalk.com/chart/

我正在关注本教程:https ://medium.com/@elspanishgeek/how-to-deploy-django-channels-2-x-on-aws-elastic-beanstalk-8621771d4ff0并使用架构号 2。

我的相关配置文件如下:

option_settings:  
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: dashboard.settings
    PYTHONPATH: /opt/python/current/app/dashboard:$PYTHONPATH
  aws:elasticbeanstalk:container:python:
    WSGIPath: dashboard/wsgi.py

  aws:elbv2:listener:80:
    ListenerEnabled: 'true'
    Protocol: HTTP
  aws:elbv2:listener:5000:
    ListenerEnabled: 'true'
    Protocol: HTTP

--

files:
  "/etc/httpd/conf.d/proxy.conf":
    mode: "000644"
    owner: root
    group: root
    content: |
      ProxyPass /websockets/ ws://127.0.0.1:5000/websockets/ upgrade=NONE
      ProxyPassReverse /websockets/ ws://127.0.0.1:5000/websockets/

我需要添加upgrade=NONEproxy.conf,这不在教程中,因为我在客户端建立websocket时总是得到503。

我有一个监听 5000 的 daphne 服务器,它成功地接收到来自客户端的 websocket 请求,但客户端永远不会收到来自服务器的响应。在 chrome 控制台上,我得到:

WebSocket connection to 'ws://django-env.eba-bcvm9cxz.us-west-2.elasticbeanstalk.com/websockets/' failed: Error during WebSocket handshake: Unexpected response code: 408

在达芙妮的命令行上,我得到:

2020-06-29 08:25:00,770 INFO     Starting server at tcp:port=5000:interface=\:\:
2020-06-29 08:25:00,770 INFO     HTTP/2 support not enabled (install the http2 and tls Twisted extras)
2020-06-29 08:25:00,770 INFO     Configuring endpoint tcp:port=5000:interface=\:\:
2020-06-29 08:25:00,772 INFO     Listening on TCP address :::5000
::ffff:127.0.0.1:51162 - - [29/Jun/2020:08:25:11] "WSCONNECTING /websockets/" - -
connected {'type': 'websocket.connect'}
::ffff:127.0.0.1:51162 - - [29/Jun/2020:08:25:11] "WSCONNECT /websockets/" - -
{"mode": "historical", "data": {"funding": [], "index": []}}
::ffff:127.0.0.1:51162 - - [29/Jun/2020:08:26:02] "WSDISCONNECT /websockets/" - -
disconnected {'type': 'websocket.disconnect', 'code': 1006}
2020-06-29 08:26:12,834 WARNING  Application instance <Task pending coro=<SessionMiddlewareInstance.__call__() running at /opt/python/run/venv/local/lib/python3.6/site-packages/channels/sessions.py:183> wait_for=<Future pending cb=[<TaskWakeupMethWrapper object at 0x7f9dc6fd3738>()]>> for connection <WebSocketProtocol client=['::ffff:127.0.0.1', 51162] path=b'/websockets/'> took too long to shut down and was killed.

Apache 的日志显示如下:

[Mon Jun 29 08:53:10.701448 2020] [authz_core:debug] [pid 22730] mod_authz_core.c(844): [client 172.31.14.21:52464] AH01628: authorization result: granted (no directives)
[Mon Jun 29 08:53:10.701482 2020] [proxy:debug] [pid 22730] mod_proxy.c(1255): [client 172.31.14.21:52464] AH01143: Running scheme ws handler (attempt 0)
[Mon Jun 29 08:53:10.701501 2020] [proxy_ajp:debug] [pid 22730] mod_proxy_ajp.c(743): [client 172.31.14.21:52464] AH00894: declining URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701505 2020] [proxy_fcgi:debug] [pid 22730] mod_proxy_fcgi.c(1021): [client 172.31.14.21:52464] AH01076: url: ws://127.0.0.1:5000/websockets/ proxyname: (null) proxyport: 0
[Mon Jun 29 08:53:10.701509 2020] [proxy_fcgi:debug] [pid 22730] mod_proxy_fcgi.c(1024): [client 172.31.14.21:52464] AH01077: declining URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701514 2020] [proxy_http:debug] [pid 22730] mod_proxy_http.c(1962): [client 172.31.14.21:52464] AH01113: HTTP: declining URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701518 2020] [proxy_scgi:debug] [pid 22730] mod_proxy_scgi.c(538): [client 172.31.14.21:52464] AH00865: declining URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701522 2020] [:debug] [pid 22730] mod_proxy_uwsgi.c(459): [client 172.31.14.21:52464] declining URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701525 2020] [proxy_wstunnel:debug] [pid 22730] mod_proxy_wstunnel.c(321): [client 172.31.14.21:52464] AH02451: serving URL ws://127.0.0.1:5000/websockets/
[Mon Jun 29 08:53:10.701548 2020] [proxy:debug] [pid 22730] proxy_util.c(2338): AH00942: WS: has acquired connection for (127.0.0.1)
[Mon Jun 29 08:53:10.701553 2020] [proxy:debug] [pid 22730] proxy_util.c(2393): [client 172.31.14.21:52464] AH00944: connecting ws://127.0.0.1:5000/websockets/ to 127.0.0.1:5000
[Mon Jun 29 08:53:10.701618 2020] [proxy:debug] [pid 22730] proxy_util.c(2616): [client 172.31.14.21:52464] AH00947: connected /websockets/ to 127.0.0.1:5000
[Mon Jun 29 08:53:10.701673 2020] [proxy:debug] [pid 22730] proxy_util.c(3085): AH02824: WS: connection established with 127.0.0.1:5000 (127.0.0.1)
[Mon Jun 29 08:53:10.701695 2020] [proxy:debug] [pid 22730] proxy_util.c(3269): AH00962: WS: connection complete to 127.0.0.1:5000 (127.0.0.1)
[Mon Jun 29 08:53:10.701722 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(164): [remote 127.0.0.1:5000] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:10.701725 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 27 bytes
[Mon Jun 29 08:53:10.701729 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): GET /websockets/ HTTP/1.1\r\n
[Mon Jun 29 08:53:10.701732 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 22 bytes
[Mon Jun 29 08:53:10.701735 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Host: 127.0.0.1:5000\r\n
[Mon Jun 29 08:53:10.701738 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 32 bytes
[Mon Jun 29 08:53:10.701740 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Accept-Encoding: gzip, deflate\r\n
[Mon Jun 29 08:53:10.701743 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 42 bytes
[Mon Jun 29 08:53:10.701746 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Accept-Language: en-US,en;q=0.9,pt;q=0.8\r\n
[Mon Jun 29 08:53:10.701749 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 25 bytes
[Mon Jun 29 08:53:10.701752 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Cache-Control: no-cache\r\n
[Mon Jun 29 08:53:10.701754 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 84 bytes
[Mon Jun 29 08:53:10.701757 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Cookie: csrftoken=UVFIJnnTJunPo48gIlzMWY5faRUG9OrLG6fSbIuyv5GishtoB8J2e91UkZmLLqka\r\n
[Mon Jun 29 08:53:10.701760 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 71 bytes
[Mon Jun 29 08:53:10.701763 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Origin: http://django-env.eba-bcvm9cxz.us-west-2.elasticbeanstalk.com\r\n
[Mon Jun 29 08:53:10.701766 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 18 bytes
[Mon Jun 29 08:53:10.701769 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Pragma: no-cache\r\n
[Mon Jun 29 08:53:10.701771 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 70 bytes
[Mon Jun 29 08:53:10.701774 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits\r\n
[Mon Jun 29 08:53:10.701777 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 45 bytes
[Mon Jun 29 08:53:10.701780 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Sec-WebSocket-Key: C0LIw5FM5I76j0+RCx5mwQ==\r\n
[Mon Jun 29 08:53:10.701783 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 27 bytes
[Mon Jun 29 08:53:10.701785 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Sec-WebSocket-Version: 13\r\n
[Mon Jun 29 08:53:10.701788 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 129 bytes
[Mon Jun 29 08:53:10.701795 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36\r\n
[Mon Jun 29 08:53:10.701799 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 46 bytes
[Mon Jun 29 08:53:10.701801 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): X-Forwarded-For: 78.130.85.107, 172.31.14.21\r\n
[Mon Jun 29 08:53:10.701804 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 22 bytes
[Mon Jun 29 08:53:10.701807 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): X-Forwarded-Port: 80\r\n
[Mon Jun 29 08:53:10.701810 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 25 bytes
[Mon Jun 29 08:53:10.701812 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): X-Forwarded-Proto: http\r\n
[Mon Jun 29 08:53:10.701815 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 74 bytes
[Mon Jun 29 08:53:10.701818 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): X-Forwarded-Host: django-env.eba-bcvm9cxz.us-west-2.elasticbeanstalk.com\r\n
[Mon Jun 29 08:53:10.701821 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 64 bytes
[Mon Jun 29 08:53:10.701824 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): X-Forwarded-Server: ip-172-31-6-170.us-west-2.compute.internal\r\n
[Mon Jun 29 08:53:10.701827 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): 43 bytes
[Mon Jun 29 08:53:10.701829 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (data-POOL): Upgrade: WebSocket\r\nConnection: Upgrade\r\n\r\n
[Mon Jun 29 08:53:10.701832 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:10.814047 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(140): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in [readbytes-nonblocking] 8192 readbytes
[Mon Jun 29 08:53:10.814092 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): 207 bytes
[Mon Jun 29 08:53:10.814101 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): HTTP/1.1 101 Switching Protocols\r\nServer: Daphne\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Ks+j/i0WQXD2tPynVBYHdjRIvk4=\r\n\r\n\x81<{"mode": "historical", "data": {"funding": [], "index": []}}
[Mon Jun 29 08:53:10.814112 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(164): [client 172.31.14.21:52464] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:10.814115 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [client 172.31.14.21:52464] mod_dumpio:  dumpio_out (data-TRANSIENT): 207 bytes
[Mon Jun 29 08:53:10.814118 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [client 172.31.14.21:52464] mod_dumpio:  dumpio_out (data-TRANSIENT): HTTP/1.1 101 Switching Protocols\r\nServer: Daphne\r\nUpgrade: WebSocket\r\nConnection: Upgrade\r\nSec-WebSocket-Accept: Ks+j/i0WQXD2tPynVBYHdjRIvk4=\r\n\r\n\x81<{"mode": "historical", "data": {"funding": [], "index": []}}
[Mon Jun 29 08:53:10.814142 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(140): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in [readbytes-nonblocking] 8192 readbytes
[Mon Jun 29 08:53:32.113745 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): 6 bytes
[Mon Jun 29 08:53:32.113750 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): \x89\x04qxs1
[Mon Jun 29 08:53:38.838076 2020] [watchdog:debug] [pid 22860] mod_watchdog.c(590): AH02981: Watchdog: Created child worker thread (_proxy_hcheck_).
[Mon Jun 29 08:53:38.838251 2020] [proxy:debug] [pid 22860] proxy_util.c(1940): AH00925: initializing worker ws://127.0.0.1:5000/websockets/ shared
[Mon Jun 29 08:53:38.838342 2020] [proxy:debug] [pid 22860] proxy_util.c(2000): AH00927: initializing worker ws://127.0.0.1:5000/websockets/ local
[Mon Jun 29 08:53:38.838425 2020] [proxy:debug] [pid 22860] proxy_util.c(2035): AH00930: initialized pool in child 22860 for (127.0.0.1) min=0 max=4 smax=4
[Mon Jun 29 08:53:38.838486 2020] [proxy:debug] [pid 22860] proxy_util.c(1940): AH00925: initializing worker proxy:reverse shared
[Mon Jun 29 08:53:38.838545 2020] [proxy:debug] [pid 22860] proxy_util.c(2000): AH00927: initializing worker proxy:reverse local
[Mon Jun 29 08:53:38.838605 2020] [proxy:debug] [pid 22860] proxy_util.c(2035): AH00930: initialized pool in child 22860 for (*) min=0 max=4 smax=4
[Mon Jun 29 08:53:38.838661 2020] [proxy:debug] [pid 22860] proxy_util.c(1935): AH00924: worker ws://127.0.0.1:5000/websockets/ shared already initialized
[Mon Jun 29 08:53:38.838712 2020] [proxy:debug] [pid 22860] proxy_util.c(1992): AH00926: worker ws://127.0.0.1:5000/websockets/ local already initialized
[Mon Jun 29 08:53:42.226547 2020] [dumpio:trace7] [pid 22726] mod_dumpio.c(140): [client 172.31.14.21:52506] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:42.226638 2020] [dumpio:trace7] [pid 22789] mod_dumpio.c(140): [client 172.31.14.21:52504] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:42.839826 2020] [watchdog:debug] [pid 22866] mod_watchdog.c(590): AH02981: Watchdog: Created child worker thread (_proxy_hcheck_).
[Mon Jun 29 08:53:42.839973 2020] [proxy:debug] [pid 22866] proxy_util.c(1940): AH00925: initializing worker ws://127.0.0.1:5000/websockets/ shared
[Mon Jun 29 08:53:42.840067 2020] [proxy:debug] [pid 22866] proxy_util.c(2000): AH00927: initializing worker ws://127.0.0.1:5000/websockets/ local
[Mon Jun 29 08:53:42.840150 2020] [proxy:debug] [pid 22866] proxy_util.c(2035): AH00930: initialized pool in child 22866 for (127.0.0.1) min=0 max=4 smax=4
[Mon Jun 29 08:53:42.840211 2020] [proxy:debug] [pid 22866] proxy_util.c(1940): AH00925: initializing worker proxy:reverse shared
[Mon Jun 29 08:53:42.840270 2020] [proxy:debug] [pid 22866] proxy_util.c(2000): AH00927: initializing worker proxy:reverse local
[Mon Jun 29 08:53:42.840329 2020] [proxy:debug] [pid 22866] proxy_util.c(2035): AH00930: initialized pool in child 22866 for (*) min=0 max=4 smax=4
[Mon Jun 29 08:53:42.840384 2020] [proxy:debug] [pid 22866] proxy_util.c(1935): AH00924: worker ws://127.0.0.1:5000/websockets/ shared already initialized
[Mon Jun 29 08:53:42.840435 2020] [proxy:debug] [pid 22866] proxy_util.c(1992): AH00926: worker ws://127.0.0.1:5000/websockets/ local already initialized
[Mon Jun 29 08:53:43.306531 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(140): [client 172.31.44.122:13292] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:43.306572 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(151): [client 172.31.44.122:13292] mod_dumpio: dumpio_in - 70014
[Mon Jun 29 08:53:43.306580 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(164): [client 172.31.44.122:13292] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:43.306584 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(63): [client 172.31.44.122:13292] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:43.306588 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(63): [client 172.31.44.122:13292] mod_dumpio:  dumpio_out (metadata-EOC): 0 bytes
[Mon Jun 29 08:53:43.841737 2020] [watchdog:debug] [pid 22872] mod_watchdog.c(590): AH02981: Watchdog: Created child worker thread (_proxy_hcheck_).
[Mon Jun 29 08:53:43.841930 2020] [proxy:debug] [pid 22872] proxy_util.c(1940): AH00925: initializing worker ws://127.0.0.1:5000/websockets/ shared
[Mon Jun 29 08:53:43.842498 2020] [proxy:debug] [pid 22872] proxy_util.c(2000): AH00927: initializing worker ws://127.0.0.1:5000/websockets/ local
[Mon Jun 29 08:53:43.842550 2020] [proxy:debug] [pid 22872] proxy_util.c(2035): AH00930: initialized pool in child 22872 for (127.0.0.1) min=0 max=4 smax=4
[Mon Jun 29 08:53:43.842563 2020] [proxy:debug] [pid 22872] proxy_util.c(1940): AH00925: initializing worker proxy:reverse shared
[Mon Jun 29 08:53:43.842568 2020] [proxy:debug] [pid 22872] proxy_util.c(2000): AH00927: initializing worker proxy:reverse local
[Mon Jun 29 08:53:43.842577 2020] [proxy:debug] [pid 22872] proxy_util.c(2035): AH00930: initialized pool in child 22872 for (*) min=0 max=4 smax=4
[Mon Jun 29 08:53:43.842581 2020] [proxy:debug] [pid 22872] proxy_util.c(1935): AH00924: worker ws://127.0.0.1:5000/websockets/ shared already initialized
[Mon Jun 29 08:53:43.842584 2020] [proxy:debug] [pid 22872] proxy_util.c(1992): AH00926: worker ws://127.0.0.1:5000/websockets/ local already initialized
[Mon Jun 29 08:53:47.663940 2020] [dumpio:trace7] [pid 22728] mod_dumpio.c(140): [client 172.31.14.21:52528] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:47.663982 2020] [dumpio:trace7] [pid 22728] mod_dumpio.c(151): [client 172.31.14.21:52528] mod_dumpio: dumpio_in - 70014
[Mon Jun 29 08:53:47.663990 2020] [dumpio:trace7] [pid 22728] mod_dumpio.c(164): [client 172.31.14.21:52528] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:47.663994 2020] [dumpio:trace7] [pid 22728] mod_dumpio.c(63): [client 172.31.14.21:52528] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:47.664008 2020] [dumpio:trace7] [pid 22728] mod_dumpio.c(63): [client 172.31.14.21:52528] mod_dumpio:  dumpio_out (metadata-EOC): 0 bytes
[Mon Jun 29 08:53:52.126484 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(140): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in [readbytes-nonblocking] 8192 readbytes
[Mon Jun 29 08:53:52.126540 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): 6 bytes
[Mon Jun 29 08:53:52.126545 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [remote 127.0.0.1:5000] mod_dumpio:  dumpio_in (data-HEAP): \x89\x04VWSS
[Mon Jun 29 08:53:52.126555 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(164): [client 172.31.14.21:52464] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:52.126559 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [client 172.31.14.21:52464] mod_dumpio:  dumpio_out (data-TRANSIENT): 6 bytes
[Mon Jun 29 08:53:52.126562 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(103): [client 172.31.14.21:52464] mod_dumpio:  dumpio_out (data-TRANSIENT): \x89\x04VWSS
[Mon Jun 29 08:53:52.126565 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(63): [client 172.31.14.21:52464] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:52.126589 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(140): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in [readbytes-nonblocking] 8192 readbytes
[Mon Jun 29 08:53:53.306843 2020] [dumpio:trace7] [pid 22860] mod_dumpio.c(140): [client 172.31.44.122:13298] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:53.306894 2020] [dumpio:trace7] [pid 22860] mod_dumpio.c(151): [client 172.31.44.122:13298] mod_dumpio: dumpio_in - 70014
[Mon Jun 29 08:53:53.306905 2020] [dumpio:trace7] [pid 22860] mod_dumpio.c(164): [client 172.31.44.122:13298] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:53.306909 2020] [dumpio:trace7] [pid 22860] mod_dumpio.c(63): [client 172.31.44.122:13298] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:53.306913 2020] [dumpio:trace7] [pid 22860] mod_dumpio.c(63): [client 172.31.44.122:13298] mod_dumpio:  dumpio_out (metadata-EOC): 0 bytes
[Mon Jun 29 08:53:54.771440 2020] [dumpio:trace7] [pid 22866] mod_dumpio.c(140): [client 172.31.44.122:13244] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:54.850330 2020] [watchdog:debug] [pid 22881] mod_watchdog.c(590): AH02981: Watchdog: Created child worker thread (_proxy_hcheck_).
[Mon Jun 29 08:53:54.850485 2020] [proxy:debug] [pid 22881] proxy_util.c(1940): AH00925: initializing worker ws://127.0.0.1:5000/websockets/ shared
[Mon Jun 29 08:53:54.850563 2020] [proxy:debug] [pid 22881] proxy_util.c(2000): AH00927: initializing worker ws://127.0.0.1:5000/websockets/ local
[Mon Jun 29 08:53:54.850651 2020] [proxy:debug] [pid 22881] proxy_util.c(2035): AH00930: initialized pool in child 22881 for (127.0.0.1) min=0 max=4 smax=4
[Mon Jun 29 08:53:54.850716 2020] [proxy:debug] [pid 22881] proxy_util.c(1940): AH00925: initializing worker proxy:reverse shared
[Mon Jun 29 08:53:54.850770 2020] [proxy:debug] [pid 22881] proxy_util.c(2000): AH00927: initializing worker proxy:reverse local
[Mon Jun 29 08:53:54.850840 2020] [proxy:debug] [pid 22881] proxy_util.c(2035): AH00930: initialized pool in child 22881 for (*) min=0 max=4 smax=4
[Mon Jun 29 08:53:54.850907 2020] [proxy:debug] [pid 22881] proxy_util.c(1935): AH00924: worker ws://127.0.0.1:5000/websockets/ shared already initialized
[Mon Jun 29 08:53:54.850959 2020] [proxy:debug] [pid 22881] proxy_util.c(1992): AH00926: worker ws://127.0.0.1:5000/websockets/ local already initialized
[Mon Jun 29 08:53:57.663678 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(140): [client 172.31.14.21:52538] mod_dumpio: dumpio_in [getline-blocking] 0 readbytes
[Mon Jun 29 08:53:57.663718 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(151): [client 172.31.14.21:52538] mod_dumpio: dumpio_in - 70014
[Mon Jun 29 08:53:57.663727 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(164): [client 172.31.14.21:52538] mod_dumpio: dumpio_out
[Mon Jun 29 08:53:57.663745 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(63): [client 172.31.14.21:52538] mod_dumpio:  dumpio_out (metadata-FLUSH): 0 bytes
[Mon Jun 29 08:53:57.663749 2020] [dumpio:trace7] [pid 22795] mod_dumpio.c(63): [client 172.31.14.21:52538] mod_dumpio:  dumpio_out (metadata-EOC): 0 bytes
[Mon Jun 29 08:54:02.019865 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(140): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in [readbytes-nonblocking] 8192 readbytes
[Mon Jun 29 08:54:02.019906 2020] [dumpio:trace7] [pid 22730] mod_dumpio.c(151): [remote 127.0.0.1:5000] mod_dumpio: dumpio_in - 104
[Mon Jun 29 08:54:02.019911 2020] [proxy:debug] [pid 22730] proxy_util.c(4059): (104)Connection reset by peer: [client 172.31.14.21:52464] AH03308: ap_proxy_transfer_between_connections: error on sock - ap_get_brigade
[Mon Jun 29 08:54:02.019927 2020] [proxy:debug] [pid 22730] proxy_util.c(2353): AH00943: WS: has released connection for (127.0.0.1)

我的配置有什么问题?

标签: djangoamazon-web-servicesapachewebsocketamazon-elastic-beanstalk

解决方案


我刚刚从我的应用程序中删除了负载均衡器并将我的配置文件更改为:

01_env.config

option_settings:  
  aws:elasticbeanstalk:application:environment:
    DJANGO_SETTINGS_MODULE: dashboard.settings
    PYTHONPATH: /opt/python/current/app/dashboard:$PYTHONPATH
  aws:elasticbeanstalk:container:python:
    WSGIPath: dashboard/wsgi.py

  aws:elasticbeanstalk:environment:process:http:
    Port: '80'
    Protocol: HTTP
  aws:elasticbeanstalk:environment:process:websocket:
    Port: '5000'
    Protocol: HTTP

03_proxy.config

files:
  "/etc/httpd/conf.d/proxy.conf":
    mode: "000644"
    owner: root
    group: root
    content: |
      ProxyPass /websockets/ ws://127.0.0.1:5000/websockets/
      ProxyPassReverse /websockets/ ws://127.0.0.1:5000/websockets/

由于某种原因,负载均衡器没有让 daphne 的响应传递给客户端。


推荐阅读