首页 > 系统相关 >Nginx配置文件中,如何配置启用SignalR

Nginx配置文件中,如何配置启用SignalR

时间:2023-10-11 10:11:06浏览次数:41  
标签:set http 配置文件 Nginx header server SignalR proxy

以下内容包含为 SignalR 启用 WebSocket、ServerSentEvents 和 LongPolling 所需的最低设置:

http {
  map $http_connection $connection_upgrade {
    "~*Upgrade" $http_connection;
    default keep-alive;
  }

  server {
    listen 80;
    server_name example.com *.example.com;

    # Configure the SignalR Endpoint
    location /hubroute {
      # App server url
      proxy_pass http://localhost:5000;

      # Configuration for WebSockets
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
      proxy_cache off;
      # WebSockets were implemented after http/1.0
      proxy_http_version 1.1;

      # Configuration for ServerSentEvents
      proxy_buffering off;

      # Configuration for LongPolling or if your KeepAliveInterval is longer than 60 seconds
      proxy_read_timeout 100s;

      proxy_set_header Host $host;
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
      proxy_set_header X-Forwarded-Proto $scheme;
    }
  }
}

使用多个后端服务器时,必须添加粘滞会话(sticky sessions),以防止 SignalR 连接在连接时切换服务器。 可通过多种方法在 Nginx 中添加粘滞会话(sticky sessions)。 下面是其中一种

除了前面的配置外,还添加了以下内容。 在下面的示例中,backend 是服务器组的名称。

对于 Nginx 开放源代码,使用 ip_hash 基于客户端的 IP 地址将连接路由到服务器:(必须是ip_hash )

http {
  upstream backend {
    # App server 1
    server localhost:5000;
    # App server 2
    server localhost:5002;

    ip_hash;
  }
}

最后,将 server 部分中的 proxy_pass http://localhost:5000 更改为 proxy_pass http://backend

 

 

标签:set,http,配置文件,Nginx,header,server,SignalR,proxy
From: https://www.cnblogs.com/CnKker/p/17756397.html

相关文章

  • nginx配置返回文本或json的方法
    下面是讲解“nginx配置返回文本或json的方法”的完整攻略。方法一:返回文本在nginx配置文件中,使用add_header指令来设置响应头部信息,如下所示:location/text{add_headerContent-Typetext/plain;return200"Hello,World!";}上述配置中,location指明请求的URI为......
  • Nginx 如何建立多个web服务 使用不同端口
    server{listen8080;server_nameip;#charsetkoi8-r;#access_loglogs/host.access.logmain;article/list/0/jsonlocation/{if($request_method='OPTIONS'){r......
  • 使用Nginx 建立自己的图片图床
    第一步在nginxhtml目录下建立imgs文件夹然后修改conf下的nginx.conf文件新增如下server模块server{listen8082;server_nameip;location/{if($request_method='OPTIONS'){return204;......
  • nginx通过alias别名使请求路径可以多变
    nginx通过alias别名使请求路径可以多变多多小老虎于2020-10-2210:47:57发布2985收藏3分类专栏:devops版权devops专栏收录该内容36篇文章1订阅订阅专栏文章目录前言一、root二、alias三、样例总结前言UAT上有一个需求,只有一个公网域名,通过二级域名来区分不同环境,然而对......
  • python如何配置文件路径
    1、获取被调用函数所在的模块文件名,然后获取其路径。2、与配置文件所在的路径进行比较,基于模块文件路径和父级路径的配置文件所在的相对路径,获得配置文件的绝对路径。co_filepath=sys._getframe().f_code.co_filenamehead,tail=os.path.split(co_filepath)conf_filepa......
  • nginx+lua实现人机身份验证
    前言现在很多网站考虑安全,会做人机验证,可以有效的防刷,防爬虫,防止暴力破解。你是否遇到过这个这个还有这个如何实现?如何实现人机验证,又不用和前端耦合在一起,类似waf,在第一层做验证,不通过就直接拦截。nginx支持调用lua脚本,于是可以使用nginx_lua_module来实现。我......
  • FastDFS+Nginx,轻轻松松搭建一个本地文件服务器
    前言1.本地搭建FastDFS文件系统2.局域网测试访问FastDFS3.安装cpolar内网穿透4.配置公网访问地址5.固定公网地址6.测试访问固定二级子域名前言FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决......
  • 容器初始化配置nginx
    目录#容器初始化,nginx配置apiVersion:"v1"kind:"Pod"metadata:name:nginx-67spec:volumes:-name:guazaiemptyDir:{}initContainers:-name:chesimage:nginx:alpineimagePullPolicy:IfNotPresentargs:["/......
  • redis服务配置文件详解
    bind0.0.0.0#监听地址,可以用空格隔开后多个监听IPprotected-modeyes#redis3.2之后加入的新特性,在没有设置bindIP和密码的时候,redis只允许访问127.0.0.1:6379,可以远程连接,但当访问将提示警告信息并拒绝远程访问port6379#监听端口,默认6379/tcptcp-backlog511#三次......
  • Zabbix监控Nginx的七个链接状态
    一、监控nginx链接数状态status#1.开启status页面功能cat>/etc/nginx/conf.d/status.conf<<'EOF'server{listen80;server_namelocalhost;location/nginx_status{stub_statuson;access_logoff;}}EOF#2.访问测试[ro......