@LakeForest

Как сделать поддержку wss соединения?

WebSocket connection to 'wss://localhost:8000/ws' failed:
Все нормально, пока по проект был локальный, после публикации ошибки про безопасный протокол. Не понимаю, что надо сделать, чтобы заработало?
Пробовал то, что закомменчено - та же ошибка.
import os
from models.ws_handler import WsHandler
from consumer import ServerConsumer
import tornado.ioloop
import ssl

if __name__ == '__main__':
    consumer = ServerConsumer()
    consumer.start_start_consuming_thread()

    application = tornado.web.Application(handlers=[
        (r'/ws', WsHandler)
    ], default_host="0.0.0.0")

    port = int(os.environ["PORT"])
    ssl_ctx = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
    ssl_ctx.load_cert_chain(os.path.join(os.path.abspath('.'), "private", "cert.pem"),
                            os.path.join(os.path.abspath('.'), "private", "key.pem"))
    ssl_ctx.load_verify_locations(os.path.join(os.path.abspath('.'), "private", "key.pem"))

    http_server = tornado.httpserver.HTTPServer(application, ssl_options=ssl_ctx)
    http_server.listen(port=port)
    #application.listen(port=port)

    tornado.ioloop.IOLoop.instance().start()


tornado.general;SSL Error on 13 ('x.x.x.x.', yyyy): [SSL: HTTP_REQUEST] http request (_ssl.c:1131)

Приложение находится в отдельном контейнере докер.
Полагаю нет смысла менять порт внутри контейнера на 443... Тем более он вроде занят для фронтенда (точка входа пользователей)
  • Вопрос задан
  • 171 просмотр
Решения вопроса 1
karabanov
@karabanov
Системный администратор
Доменное имя не правильное, не то, что указано в сертификате.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы