亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 網站 > Nginx > 正文

詳解Nginx反向代理WebSocket響應403的解決辦法

2024-08-30 12:29:21
字體:
來源:轉載
供稿:網友

在Nginx反向代理一個帶有WebSocket功能的Spring Web程序(源代碼地址 )時,發現訪問WebSocket接口時總是出現403響應,Nginx的配置參考的是 官方文檔 :

http {  // ssl 相關配置 ...    map $http_upgrade $connection_upgrade {    default upgrade;    '' close;  }  server {    listen 8020;    location /ws {      proxy_pass http://some-ip:8080;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection $connection_upgrade;    }  }}

唯一不同的是我們的Nginx配置了https。

于是打開Spring日志查看直接訪問和通過Nginx訪問的差別。

直接訪問的日志:

DEBUG ... o.s.web.servlet.DispatcherServlet    : DispatcherServlet with name 'dispatcherServlet' processing GET request for [/ws/gs-guide-websocket/786/kz0qai5l/websocket]DEBUG ... s.w.s.m.m.a.RequestMappingHandlerMapping : Looking up handler method for path /gs-guide-websocket/786/kz0qai5l/websocketDEBUG ... s.w.s.m.m.a.RequestMappingHandlerMapping : Did not find handler method for [/gs-guide-websocket/786/kz0qai5l/websocket]DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : Matching patterns for request [/gs-guide-websocket/786/kz0qai5l/websocket] are [/gs-guide-websocket/**]DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : URI Template variables for request [/gs-guide-websocket/786/kz0qai5l/websocket] are {}DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : Mapping [/gs-guide-websocket/786/kz0qai5l/websocket] to HandlerExecutionChain with handler [org.springframework.web.socket.sockjs.support.SockJsHttpRequestHandler@307f6b8c] and 1 interceptorDEBUG ... o.s.web.servlet.DispatcherServlet    : Last-Modified value for [/ws/gs-guide-websocket/786/kz0qai5l/websocket] is: -1DEBUG ... o.s.web.cors.DefaultCorsProcessor    : Skip CORS processing: request is from same originDEBUG ... o.s.w.s.s.t.h.DefaultSockJsService    : Processing transport request: GET http://localhost:8080/ws/gs-guide-websocket/786/kz0qai5l/websocketDEBUG ... o.s.web.servlet.DispatcherServlet    : Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handlingDEBUG ... o.s.web.servlet.DispatcherServlet    : Successfully completed request

通過Nginx訪問的日志:

DEBUG ... o.s.web.servlet.DispatcherServlet    : DispatcherServlet with name 'dispatcherServlet' processing GET request for [/ws/gs-guide-websocket/297/jp1c3ab5/websocket]DEBUG ... s.w.s.m.m.a.RequestMappingHandlerMapping : Looking up handler method for path /gs-guide-websocket/297/jp1c3ab5/websocketDEBUG ... s.w.s.m.m.a.RequestMappingHandlerMapping : Did not find handler method for [/gs-guide-websocket/297/jp1c3ab5/websocket]DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : Matching patterns for request [/gs-guide-websocket/297/jp1c3ab5/websocket] are [/gs-guide-websocket/**]DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : URI Template variables for request [/gs-guide-websocket/297/jp1c3ab5/websocket] are {}DEBUG ... o.s.w.s.s.s.WebSocketHandlerMapping   : Mapping [/gs-guide-websocket/297/jp1c3ab5/websocket] to HandlerExecutionChain with handler [org.springframework.web.socket.sockjs.support.SockJsHttpRequestHandler@307f6b8c] and 1 interceptorDEBUG ... o.s.web.servlet.DispatcherServlet    : Last-Modified value for [/ws/gs-guide-websocket/297/jp1c3ab5/websocket] is: -1DEBUG ... o.s.w.s.s.t.h.DefaultSockJsService    : Processing transport request: GET http://localhost:8080/ws/gs-guide-websocket/297/jp1c3ab5/websocketDEBUG ... o.s.w.s.s.s.OriginHandshakeInterceptor  : Handshake request rejected, Origin header value https://some-host.com not allowedDEBUG ... o.s.w.s.s.s.HandshakeInterceptorChain  : org.springframework.web.socket.server.support.OriginHandshakeInterceptor@25ce6ad4 returns false from beforeHandshake - precluding handshakeDEBUG ... o.s.web.servlet.DispatcherServlet    : Null ModelAndView returned to DispatcherServlet with name 'dispatcherServlet': assuming HandlerAdapter completed request handlingDEBUG ... o.s.web.servlet.DispatcherServlet    : Successfully completed request

注意到直接訪問的日志里有這么一條:

 

復制代碼 代碼如下:

DEBUG ... o.s.web.cors.DefaultCorsProcessor : Skip CORS processing: request is from same origin

 

通過Nginx訪問的日志里有這么一條:

 

復制代碼 代碼如下:

DEBUG ... o.s.w.s.s.s.OriginHandshakeInterceptor   : Handshake request rejected, Origin header value https://some-host.com not allowed

 

然后Google查詢相關解決辦法,找到github上的這個 issue ,所以只需要修改Nginx的配置,添加 proxy_set_header Origin ""; 就行了:

http {  // ssl 相關配置 ...    map $http_upgrade $connection_upgrade {    default upgrade;    '' close;  }  server {    listen 8020;    location /ws {      proxy_pass http://some-ip:8080;      proxy_http_version 1.1;      proxy_set_header Upgrade $http_upgrade;      proxy_set_header Connection $connection_upgrade;      proxy_set_header Origin "";    }  }}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美综合第一页| 精品国产乱码久久久久久婷婷| 亚洲精品网站在线播放gif| 亚洲国产精品嫩草影院久久| 欧美成人精品激情在线观看| 日韩少妇与小伙激情| 91久久久久久国产精品| 中文字幕av一区二区| 国产精品一区久久久| 亚洲视频在线观看网站| 精品久久久久久久久久久久久久| 91精品美女在线| 国产欧亚日韩视频| 成人国产精品免费视频| 91精品啪在线观看麻豆免费| 精品一区二区三区电影| 欧美激情一区二区三区成人| 91欧美精品午夜性色福利在线| 国产精品久久久久一区二区| 国产精品私拍pans大尺度在线| 亚洲国模精品私拍| zzjj国产精品一区二区| 毛片精品免费在线观看| 中文字幕在线看视频国产欧美| 欧美激情a∨在线视频播放| 亚洲精品福利视频| 久久国产精品电影| 日韩久久免费视频| 51精品国产黑色丝袜高跟鞋| 亚洲石原莉奈一区二区在线观看| 欧美精品激情视频| 中文国产亚洲喷潮| 亚洲三级黄色在线观看| 亚洲人成电影网站色…| 中文字幕一区日韩电影| 亚洲最大福利视频网站| 国产一区二区三区视频| 亚洲天堂av电影| 国产精品91久久| 亚洲精品98久久久久久中文字幕| 欧美视频在线观看免费网址| 国产亚洲精品综合一区91| 国产精品夫妻激情| 精品久久在线播放| 欧美午夜电影在线| 国产精品狼人色视频一区| 插插插亚洲综合网| 韩国19禁主播vip福利视频| 日韩一区二区三区国产| 精品网站999www| 中文字幕欧美专区| 欧美猛交ⅹxxx乱大交视频| 久久久久国产精品www| 欧美在线观看视频| 成人女保姆的销魂服务| 国产精品久久久久久超碰| 欧美成人一区二区三区电影| 成人www视频在线观看| 91日韩在线视频| 亚洲国产欧美一区| 国产精品一区二区三区久久| 国产日产欧美a一级在线| 日韩电影在线观看中文字幕| 日韩av综合中文字幕| 国产精品白嫩初高中害羞小美女| 伊是香蕉大人久久| 欧美自拍视频在线| 成人黄色免费在线观看| 亚洲精品日韩激情在线电影| 日韩免费高清在线观看| 成人久久久久久久| 久久视频在线观看免费| 国产精品看片资源| 这里只有视频精品| 成人性生交大片免费看小说| 精品国偷自产在线视频99| 国产精品视频在线播放| 欧洲美女免费图片一区| 91国内免费在线视频| 亚洲国产欧美在线成人app| 北条麻妃在线一区二区| 中文在线资源观看视频网站免费不卡| 亚洲精品日韩久久久| 国产视频精品va久久久久久| 2019最新中文字幕| 日韩美女在线看| 日韩av电影院| 欧美日韩午夜剧场| 亚洲国产日韩一区| 91国内揄拍国内精品对白| 亚洲免费高清视频| 欧美在线视频一区二区| 亚洲欧美中文另类| 自拍视频国产精品| 搡老女人一区二区三区视频tv| 丝袜美腿亚洲一区二区| 66m—66摸成人免费视频| 裸体女人亚洲精品一区| 国产精品日韩在线一区| 久久男人资源视频| 久久艹在线视频| 成人女保姆的销魂服务| 国产精品女视频| 亚洲跨种族黑人xxx| 亚洲一区二区中文| 久久免费视频在线| 国产精品扒开腿做爽爽爽视频| 久久国产精彩视频| 成人久久一区二区| 国产日韩精品在线播放| 亚洲福利视频二区| 欧美日韩国产激情| 97国产精品视频人人做人人爱| 国产91精品久久久久| 欧美激情精品久久久久久| 91网站免费观看| 精品视频在线播放色网色视频| 97久久精品人搡人人玩| 国产精品视频区1| 国产精品一区二区电影| 2019中文字幕在线免费观看| 精品久久久久久久久久| 国产精品久久久久久久久影视| 日韩在线免费视频| 国产成人涩涩涩视频在线观看| 久久综合伊人77777尤物| 亚洲国产成人爱av在线播放| 激情懂色av一区av二区av| 亚洲高清色综合| 97国产精品久久| 亚洲乱码国产乱码精品精| 亚洲欧美精品一区| 97精品视频在线| 欧美午夜视频在线观看| 欧美成人一区二区三区电影| 在线观看欧美日韩| 97久久超碰福利国产精品…| 亚洲欧美成人网| 成人乱色短篇合集| 国产欧美最新羞羞视频在线观看| 久久久久北条麻妃免费看| 欧美午夜视频在线观看| 国产自产女人91一区在线观看| 国产日韩欧美在线视频观看| 91香蕉国产在线观看| 91免费看片在线| 在线观看国产精品日韩av| 欧美高清videos高潮hd| 久久久精品亚洲| 色在人av网站天堂精品| 久久人91精品久久久久久不卡| 亚洲第一区在线| 国产成人一区二区三区小说| 都市激情亚洲色图| 欧美激情亚洲一区| 亚洲天堂开心观看| 成人观看高清在线观看免费| 亚洲一二在线观看| 欧美日韩国产在线播放| 九色精品美女在线| 亚洲黄色av女优在线观看| 欧美成人在线免费| 日韩电影中文字幕一区| 日韩电影视频免费|