我正在使用IIS服务器部署Django应用程序.在这个Django应用程序中,我实现了Django Channels来使用websockets.在本地,通过websocket连接,一切都运行良好,并且我能够发送消息.然而,当我部署Django应用程序时,这个问题出现了.HTTPS工作得非常好,但WSS(Webocket Safe)不工作.我遇到404未找到错误.

我正在try 的网址是

wss://my_domain/ws/start-quiz/

还要注意,我使用memurai而不是redis来使用Channel_layers

CHANNEL_LAYERS = {
        'default': {
            'BACKEND': 'channels_redis.core.RedisChannelLayer',
            'CONFIG': {
                "hosts": [('127.0.0.1', 6370)],
            },
        },
    }

推荐答案

我也有同样的问题,我使用Daphne和频道解决了这个问题. 我的web. connect文件conatins

rules>
   <rule name="WebSocketProxy" stopProcessing="true">
     <match url="^ws/(.*)" />
        <action type="Rewrite" url="http://127.0.0.1:8001/ws/{R:1}" />
   </rule>
</rules>

为了在本地运行Daphne,我使用了以下命令

daphne -p 8000 your_project_name.asgi:application

请首先确保您使用IIS和FASTCGI的Django项目配置正确

Python相关问答推荐

Image Font生成带有条形码Code 128的条形码时出现枕头错误OSErsor:无法打开资源

Python中的负前瞻性regex遇到麻烦

通过仅导入pandas来在for循环中进行多情节

如何从FDaGrid实例中删除某些函数?

我必须将Sigmoid函数与r2值的两种类型的数据集(每种6个数据集)进行匹配,然后绘制匹配函数的求导.我会犯错

通过优化空间在Python中的饼图中添加标签

具有多个选项的计数_匹配

如何将双框框列中的成对变成两个新列

使用miniconda创建环境的问题

Polars:用氨纶的其他部分替换氨纶的部分

对所有子图应用相同的轴格式

如何在给定的条件下使numpy数组的计算速度最快?

连接一个rabrame和另一个1d rabrame不是问题,但当使用[...]'运算符会产生不同的结果

删除marplotlib条形图上的底边

手动设置seborn/matplotlib散点图连续变量图例中显示的值

如何根据rame中的列值分别分组值

如何使用pytest在traceback中找到特定的异常

ModuleNotFoundError:Python中没有名为google的模块''

操作布尔值的Series时出现索引问题

以极轴表示的行数表达式?