0
Google Compute EngineにDjangoプロジェクトがあります。ここに私のDjangoプロジェクトの構造があります。ダブネでDjangoとChannelsを扱う
import os
from channels.asgi import get_channel_layer
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "my_project.settings")
channel_layer = get_channel_layer()
私は、バックエンドとしてasgi_redis
を使用します。私はasgi.py
を作っtutorialsб後
example_channels
├── db.sqlite3
├── example
│ ├── admin.py
│ ├── apps.py
│ ├── consumers.py
│ ├── __init__.py
│ ├── migrations
│ │
│ ├── models.py
│ ├── templates
│ │ └── example
│ │ ├── _base.html
│ │ └── user_list.html
│ ├── tests.py
│ ├── urls.py
│ └── views.py
├── example_channels
│ ├── asgi.py
│ ├── __init__.py
│ ├── routing.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
└── manage.py
。設定ファイルは次のようになります。
CHANNEL_LAYERS = {
'default': {
'BACKEND': 'asgi_redis.RedisChannelLayer',
'CONFIG': {
'hosts': [('localhost', 6379)],
},
'ROUTING': 'example_channels.routing.channel_routing',
}
}
次に、サーバーを起動しようとします。私はpython manage.py runworker &
を実行し、取得:
~/websockets_prototype/example_channels$ 2017-07-19 16:04:19,204 - INFO - runworker - Usi
ng single-threaded worker.
2017-07-19 16:04:19,204 - INFO - runworker - Running worker against channel layer default (asgi_redis.core.RedisCha
nnelLayer)
2017-07-19 16:04:19,205 - INFO - worker - Listening on channels http.request, websocket.connect, websocket.disconne
ct, websocket.receive
をそしてダフネを実行します。私は、サーバーへのリクエストの送信を開始
~/websockets_prototype/example_channels$ 2017-07-19 16:05:28,619 INFO Starting server
at tcp:port=80:interface=0.0.0.0, channel layer example_channels.asgi:channel_layer.
2017-07-19 16:05:28,620 INFO HTTP/2 support not enabled (install the http2 and tls Twisted extras)
2017-07-19 16:05:28,620 INFO Using busy-loop synchronous mode on channel layer
2017-07-19 16:05:28,620 INFO Listening on endpoint tcp:port=80:interface=0.0.0.0
、私はThis site can’t be reached
エラーを取得します。
settings.pyにポート8000でダフネで試してみて、= [「*」]あなたのALLOWED_HOSTSレビューは、あなたのサイトは、時間のいくつかを待って、あなたのサイトを与えるされたエラーに到達したりすることはできませんか? –
あなたはこれを理解したことがありますか? –