Не удалось подключиться к веб-сокетуPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Не удалось подключиться к веб-сокету

Сообщение Anonymous »

На моем веб-сайте я использую Django, WebSocket отлично работает на локальном хосте, но когда я отправляю его на VPS (виртуальный частный сервер), я получаю ошибку подключения WebSocket к wss://имя_домена/ws/admin/pending/products / не удалось.
это мой asgi.py:

Код: Выделить всё

import os

import django
from channels.auth import AuthMiddlewareStack
from channels.routing import ProtocolTypeRouter, URLRouter
from django.core.asgi import get_asgi_application

import api.routing

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "Naviguih_backend.settings")
django.setup()

application = ProtocolTypeRouter(
{
"http": get_asgi_application(),
"websocket": AuthMiddlewareStack(URLRouter(api.routing.websocket_urlpatterns)),
}
)
и мой маршрутизация.py:

Код: Выделить всё

from django.urls import path

from .consumers import AdminNotificationConsumer, NotificationConsumer

websocket_urlpatterns = [
path("ws/notifications/", NotificationConsumer.as_asgi()),
path("ws/admin/pending/products/", AdminNotificationConsumer.as_asgi()),
]
Я прочитал несколько решений, в которых говорится, что вам необходимо настроить Nginx для переадресации порта, и вот моя конфигурация:

Код: Выделить всё

server {
server_name domain_name;
client_max_body_size 25M;

location / {
proxy_pass http://127.0.0.1:8000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

location /ws/ {
proxy_pass http://127.0.0.1:8000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}

listen 443 ssl; # managed by Certbot
ssl_certificate /etc/letsencrypt/live/domain_name/fullchain.pem; # managed by Certbot
ssl_certificate_key /etc/letsencrypt/live/domain_name/privkey.pem; # managed by Certbot
include /etc/letsencrypt/options-ssl-nginx.conf; # managed by Certbot
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem; # managed by Certbot
}

server {
if ($host = domain_name) {
return 301 https://$host$request_uri;
} # managed by Certbot

listen 80;
server_name domain_name;
return 404; # managed by Certbot
}
а потом я попробовал и столкнулся с той же проблемой.

Подробнее здесь: https://stackoverflow.com/questions/790 ... ion-failed
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Я не могу подключиться к своему веб-сокету OpenAi к моему веб-сокету в моем скрипте Twilio?
    Anonymous » » в форуме Python
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Не удалось подключиться к веб-сокету в следующем приложении JS
    Гость » » в форуме Javascript
    0 Ответы
    46 Просмотры
    Последнее сообщение Гость
  • Не удалось подключиться к веб-сокету в следующем приложении JS
    Гость » » в форуме Javascript
    0 Ответы
    52 Просмотры
    Последнее сообщение Гость
  • Не удалось подключиться к веб-сокету каналов Django
    Anonymous » » в форуме Python
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Как подключиться к существующему веб-сокету в Laravel
    Anonymous » » в форуме Php
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»