相关疑难解决方法(0)

.net核心nginx托管套接字不允许http发布

我正在尝试创建一个具有http函数(包括http post函数)和web套接字(例如signalR)的网站。我正在尝试使用nginx在ubuntu服务器上托管此网站。通常,在nginx上的设置是这样的:

server {
 listen 80;
 location / {
    proxy_pass http://localhost:5000;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection keep-alive;
    proxy_set_header Host $http_host;
    proxy_cache_bypass $http_upgrade;
 }
}
Run Code Online (Sandbox Code Playgroud)

但是,我后来发现我需要添加proxy_set_header Connection "upgrade";才能使用websocket。但是,在.net Core项目中添加此行会导致所有http发布请求均显示400错误,如此处所示,在ASP.Net Core中发布表单数据时显示400状态错误。是否有一个既允许发布帖子又允许Web套接字的设置?

nginx websocket asp.net-core

2
推荐指数
1
解决办法
606
查看次数

标签 统计

asp.net-core ×1

nginx ×1

websocket ×1