問題タブ [daphne]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
129 参照

python - Django /admin は /usr/src/app/admin にリダイレクトします

Dockerコンテナで実行されているDjango 1.9.6アプリケーションがあります。docker コンテナーには、静的ファイルを提供するように構成された nginx があります。

/admin にリンクすると /admin ページに移動しますが、リンクをクリックすると/usr/src/app /admin/api/module/に移動します

Django はディレクトリ /usr/src/app から実行されていることがわかります。

設定に追加しようとしFORCE_SCRIPT_NAME=''ましたが、これは役に立ちませんでした。

Django アプリは Daphne 経由で実行されています (チャネルを使用しているため)

nginx の設定は次のとおりです。

0 投票する
1 に答える
532 参照

python - Django シグナルがマルチコンテナ セットアップのチャネルで機能しない

私はdjango appを持っており、 channelschannels apiでwebsocketサポートを実装しています。モデルへのバインディングでデマルチプレクサを使用しています。たとえば、モデルを保存すると、開いている websocket 接続に変更が送信されます。私が実行./manage.py runserver 0:80してすべてを1つのコンテナに収めれば、すべてが正常に機能します。しかし、アプリを UWSGI、daphne、および docker を使用するワーカー コンテナーに分離すると、シグナルはトリガーされません。たとえば、セロリ ワーカー (タスク) が信号をトリガーし、websocket 経由で更新を送信するようにします。マルチコンテナのセットアップでは、WebSocket 接続は正常に確立され、Web は正常に動作しますが、そのシグナルをトリガーするものは何もありません。

シグナルがどのように定義されているかは、こちらのgithubで確認できます。

私はdjango 1.9.12、python 2.7、dockerを使用しており、debian stretchでビルドしています。

docker-compose.yml

nginx.conf

0 投票する
0 に答える
2392 参照

nginx - WebSocket ハンドシェイク中の 502 Bad Gateway

私のアプリは以下を使用します:

  • ジャンゴチャンネル

  • nginx

  • daphne (Django Channels HTTP/WebSocket サーバー)

フロントエンドの html ファイルには、次のような JavaScript の行がいくつかあります。

アプリのこの websocket 部分は機能しません。ページを読み込むと、Chrome Web Inspector は次のように言います。

サイトの残りの部分は正常にロードされます。

daphne を次のように開始します: daphne -b 0.0.0.0 -p 8001 ...

そしてnginxの設定はこれです:

私のホストマシン上の myapphostname のホストファイルはもちろん設定されており、アプリの IP を指しています (vagrant を介して vm で実行されています)。

現時点では、アプリの構成ミスがnginxサイトではないのか、websocketsバックエンド部分で発生しているのかはわかりません。

問題をさらにデバッグするために、どの方向に進むことができるのだろうか。

0 投票する
1 に答える
1253 参照

django - Daphne サーバー コマンドが使用できない

私はチャネルを使用して django アプリを作成し、それを でテストしましたpython3 manage.py runserver。これは、私が理解しているように、コマンドの一部として Daphne サーバーを実行します。ドキュメントに従って、いくつかのワーカーなどでスタンドアロンの Daphne サーバーを実行して、アプリをデプロイしたいだけです。daphne問題は、ターミナルでコマンドを使用できないようです。実行daphne my_project.asgi:channel_layerすると、端末に daphne コマンドが見つからないことが通知されます。(関連する場合は、Ubuntu 17.10を実行しています)

pipを使用してchannelsパッケージをインストールすると、Daphneが確実にインストールされました。実行pip3 install daphneすると、関連するすべてのパッケージがあり、インストールが最新であると表示されます。私はここで愚かなことをしていますか?これは他の誰にとってもうまくいくようです。daphne コマンドを使用してサーバーを起動できるようにするにはどうすればよいですか?

0 投票する
2 に答える
4082 参照

django - django で Daphne 2.0 を使用して静的メディアを提供する方法

私はdaphneが初めてで、daphneで実行されているdjangoアプリをubuntuサーバーにデプロイする方法を知りたいです。ドキュメントに記載されているようにアプリを既に構成しており、静的ファイル (js、css、imgs など) が読み込まれないことを除いて、正常に動作します。私は何をする必要がありますか?