欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Nginx轉(zhuǎn)發(fā)socket端口配置詳解

 更新時(shí)間:2019年06月04日 09:16:51   作者:he_xd  
這篇文章主要介紹了Nginx轉(zhuǎn)發(fā)socket端口配置詳解,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

Nginx 轉(zhuǎn)發(fā) socket 端口常見(jiàn)場(chǎng)景:在線學(xué)習(xí)應(yīng)用,在常規(guī)功能之外,增加一個(gè)聊天室功能,后端選擇 swoole 提供服務(wù)提供者,同時(shí)不想前端直接 ip:port 方式鏈接到服務(wù),需要使用 Nginx 進(jìn)行轉(zhuǎn)發(fā)。

常規(guī)情況,我們可以在用戶頁(yè)面,直接建立 socket 鏈接,但這樣的操作會(huì)暴露端口,帶來(lái)一定的安全隱患,使用 Nginx 進(jìn)行轉(zhuǎn)發(fā),可以隱藏端口。額外的問(wèn)題就是一些 header 參數(shù)也需要在轉(zhuǎn)發(fā)過(guò)程中帶給 socket 服務(wù)提供者,其他只需要 Nginx 處理一下從常規(guī)協(xié)議轉(zhuǎn)換到 Websocket 就可以。

其中,"Upgrade" 是 逐跳(hop-by-hop) 頭,無(wú)法從客戶端轉(zhuǎn)發(fā)到代理服務(wù)器,通過(guò)轉(zhuǎn)發(fā)代理,客戶端可以使用 CONNECT 方法來(lái)規(guī)避此問(wèn)題。但是,這不適用于反向代理,因?yàn)榭蛻舳瞬恢廊魏未矸?wù)器,并且需要在代理服務(wù)器上進(jìn)行特殊處理。同時(shí)逐跳頭包含 "Upgrade" 和 "Connection" 都無(wú)法傳遞,則需要在轉(zhuǎn)換為 Websocket 的時(shí)候帶上這兩個(gè)參數(shù):例如:

location /chat/ {
  proxy_pass http://backend;
  proxy_http_version 1.1;
  proxy_set_header Upgrade $http_upgrade;
  proxy_set_header Connection "upgrade";
}

進(jìn)階:讓轉(zhuǎn)發(fā)到代理服務(wù)器的 "Connection" 頭字段的值,取決于客戶端請(qǐng)求頭的 "Upgrade" 字段值。例如:

http {
  map $http_upgrade $connection_upgrade {
    default upgrade;
    ''   close;
  }

  server {
    ...

    location /chat/ {
      proxy_pass http://backend;
      proxy_http_version 1.1;
      proxy_set_header Upgrade $http_upgrade;
      proxy_set_header Connection $connection_upgrade;
    }
  }

注意:示例中的 http://backend 為一組負(fù)載均衡的服務(wù)器,只有單臺(tái)服務(wù)器的,可以寫成 proxy_pass http://127.0.0.1:9501; 這樣的。

此外,默認(rèn)情況下,在 60 秒內(nèi)未傳送任何數(shù)據(jù)的鏈接將被關(guān)閉,時(shí)間可以使用 proxy_read_timeout 指令來(lái)延長(zhǎng)?;蛘叽矸?wù)器可以配置定時(shí)發(fā)送 ping 幀來(lái)重置超時(shí)及檢查鏈接是否可用。

參考鏈接: Nginx Websocket proxying

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Nginx+Tomcat群集的實(shí)現(xiàn)示例

    Nginx+Tomcat群集的實(shí)現(xiàn)示例

    這篇文章主要介紹了Nginx+Tomcat群集的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-07-07
  • Nginx代理后如何獲取客戶端真實(shí)IP地址

    Nginx代理后如何獲取客戶端真實(shí)IP地址

    在實(shí)際應(yīng)用中我們可能需要獲取用戶的ip地址,比如做異地登陸的判斷,或者統(tǒng)計(jì)ip訪問(wèn)次數(shù)等,下面這篇文章主要給大家介紹了關(guān)于Nginx代理后如何獲取客戶端真實(shí)IP地址的相關(guān)資料,需要的朋友可以參考下
    2023-05-05
  • nginx禁用特定ip的方法詳解

    nginx禁用特定ip的方法詳解

    Nginx是一款輕量級(jí)的Web服務(wù)器、反向代理服務(wù)器及電子郵件代理服務(wù)器,其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力確實(shí)在同類型的網(wǎng)頁(yè)服務(wù)器中表現(xiàn)較好,本文主要介紹利用nginx來(lái)禁用特定ip的方法,需要的朋友可以參考下
    2023-09-09
  • 修改Nginx源碼實(shí)現(xiàn)worker進(jìn)程隔離實(shí)現(xiàn)詳解

    修改Nginx源碼實(shí)現(xiàn)worker進(jìn)程隔離實(shí)現(xiàn)詳解

    這篇文章主要為大家介紹了修改Nginx源碼實(shí)現(xiàn)worker進(jìn)程隔離實(shí)現(xiàn)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-10-10
  • PHP開(kāi)發(fā)框架kohana3.3.1在nginx下的偽靜態(tài)設(shè)置例子

    PHP開(kāi)發(fā)框架kohana3.3.1在nginx下的偽靜態(tài)設(shè)置例子

    這篇文章主要介紹了PHP開(kāi)發(fā)框架kohana3.3.1在nginx下的偽靜態(tài)設(shè)置例子,kohana曾經(jīng)是codeigniter框架的衍生版,后來(lái)發(fā)展成另一個(gè)獨(dú)立的PHP5開(kāi)發(fā)框架,需要的朋友可以參考下
    2014-07-07
  • Nginx中404頁(yè)面的配置及AJAX請(qǐng)求返回404頁(yè)面的方法

    Nginx中404頁(yè)面的配置及AJAX請(qǐng)求返回404頁(yè)面的方法

    404是請(qǐng)求頁(yè)面不存在的錯(cuò)誤代碼,在Nginx中有時(shí)處理jQuery中的ajax方法雖然能返回404頁(yè)面但錯(cuò)誤代碼卻返回200,針對(duì)此問(wèn)題我們具體來(lái)看一下Nginx中404頁(yè)面的配置及AJAX請(qǐng)求返回404頁(yè)面的方法
    2016-05-05
  • nginx前后端同域名配置的方法實(shí)現(xiàn)

    nginx前后端同域名配置的方法實(shí)現(xiàn)

    這篇文章主要介紹了nginx前后端同域名配置的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 訪問(wèn)nginx顯示未找到站點(diǎn)的問(wèn)題分析及解決方案

    訪問(wèn)nginx顯示未找到站點(diǎn)的問(wèn)題分析及解決方案

    當(dāng)我們?cè)诎惭b好nginx準(zhǔn)備訪問(wèn)80端口時(shí),突然出現(xiàn)您的請(qǐng)求在Web服務(wù)器中沒(méi)有找到對(duì)應(yīng)的站點(diǎn),所以本文給大家介紹了訪問(wèn)nginx顯示未找到站點(diǎn)的問(wèn)題分析及解決方案,需要的朋友可以參考下
    2024-03-03
  • Nginx負(fù)載均衡(架構(gòu)之路)詳解

    Nginx負(fù)載均衡(架構(gòu)之路)詳解

    這篇文章主要為大家詳細(xì)介紹了Nginx負(fù)載均衡的相關(guān)資料,如何配置三臺(tái)服務(wù)器,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-07-07
  • 詳解使用Nginx和uWSGI配置Python的web項(xiàng)目的方法

    詳解使用Nginx和uWSGI配置Python的web項(xiàng)目的方法

    這篇文章主要介紹了使用Nginx和uWSGI配置Python的web項(xiàng)目的方法,與其他CGI連接方式相比uwsgi的連接性能也較為出眾,需要的朋友可以參考下
    2015-12-12

最新評(píng)論