1. 程式人生 > >【配置】SwooleDistributed 3.X框架中利用Nginx對HTTP、Websocket協議進行反向代理

【配置】SwooleDistributed 3.X框架中利用Nginx對HTTP、Websocket協議進行反向代理

前言

SwooleDistributed 3.X可以同時支援HTTP、Websocket和TCP協議,在配置防火牆規則的情況下可以通過IP:PORT 的方式進行HTTP和Websocket的訪問,但是這樣在生產環境中是不安全的,而且相對來說IP:PORT 的訪問方式並不友好,所以就要用到nginx的反向代理了,將80埠的請求反向代理到SwooleDistributed框架監聽的埠。

具體配置

現在假設伺服器上已經安裝了nginx以及SwooleDistributed框架。核心的nginx配置如下:

....
# HTTP請求轉發到SwooleDistributed監聽的9092埠
location /{
    proxy_set
_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_set_header X-NginX-Proxy true; proxy_pass http://127.0.0.1:9092/; break; } # Websocket請求轉發到SwooleDistributed監聽的9093埠 location /ws{ proxy_pass http://127.0
.0.1:9093; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; # WebSocket 支援的核心配置 proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $http_connection; # WebSocket超時設定(可選)
proxy_connect_timeout 7d; proxy_send_timeout 7d; proxy_read_timeout 7d; proxy_redirect off; break; } ....

測試結果

我們可以通過瀏覽器的console 命令列進行測試,也可以使用線上的Websocket測試工具進行測試,這裡推薦使用EasySwoole 出品的Websocket線上測試工具,點此開啟

效果如下:
這裡寫圖片描述

相關推薦

配置SwooleDistributed 3.X框架利用NginxHTTPWebsocket協議進行反向代理

前言 SwooleDistributed 3.X可以同時支援HTTP、Websocket和TCP協議,在配置防火牆規則的情況下可以通過IP:PORT 的方式進行HTTP和Websocket的訪問,但是這樣在生產環境中是不安全的,而且相對來說IP:PORT 的訪

cocos2dx 3.x C++搭建protobuf環境

person ccf binding csdn bind taf protoc -cp strlen http://blog.csdn.net/ganpengjin1/article/details/50964961 Cocos2dx 裏面在網絡遊戲通信這一塊一般我們都會采

詳述 Spring MVC 框架攔截器 Interceptor 的使用方法

1 前言   昨天新接了一個需要,“攔截 XXX,然後 OOO”,好吧,說白了就是要用攔截器乾點事(實現一個具體的功能)。之前,也在網路上搜了很多關於Interceptor的文章,但感覺內容都大同小異,而且知識點零零散散,不太方便閱讀。因此,正好藉此機會,整理一篇關於攔截器

SpringSpring 3.x企業應用開發實戰(6)----BeanFactory

BeanFactory是一個類工廠,是類的通用工廠。不多說,直接進入BeanFactory的使用: 首先建一個Bean類,Car.java package com.techman.reflect

AndroidGreenDao 3.X 結合Volley以及GsonImageLoader實現資料儲存

關於GreenDao的優點已經不用再說了,關於第三方資料庫框架有很多,相對於Android系統本身的SQLite以及其它第三方而言,我感覺GreenDao使用更方便,體積小、速度更快。網上大多是關於GreenDao之前版本的介紹,關於3.0+新版的介紹不多。Gr

MYSQL 利用insert自增欄位進行插值

 mysql的insert/replace/update/delete & insert,update,delete多表操作 2008-03-28 15:44:10 from WriteDream INSERT和REPLACE語句的功能都是向表中插入新的資料。這兩條

踩坑angularJS 1.X版本 ng-bind 指令多空格展示

ext 數據庫查詢 sci 接收 可能 color 最終 數據 目的 做項目的時候遇到的問題 1、問題描述   用戶在表單某個值輸入多個空格,例如:A B,保存至服務器   在列表查詢頁面中使用bg-bind的指令單向綁定,結果展示位A B,連續的空格被替換

: 《江湖X》開發筆談 - 熱更新框架

列表 ane lua 會有 數據文件 由於 嚴格 http服務 tex 前言 大家好,我們這期繼續借著我們工作室正在運營的在線遊戲《江湖X》來談一下熱更新機制以及我們的理解和解決方案。這裏先簡單的介紹一下熱更新的概念,熟悉這部分的朋友可以跳過,直接看我們的方案。 熱更新

在使用實體框架(Entity Framework)的應用加入審計信息(Audit trail)跟蹤數據的變動

要求 date ted hang ng- tar () eat code 在一些比較重要的業務系統中,通常會要求系統跟蹤數據記錄的變動情況。系統要記錄什麽時間,什麽人,對那些信息進行了變動。 比較簡單的實現方式是在每個表中加入兩個字段CreatedBy和CreatedA

環境配置(四)opencv3配置sfm模組

1、配置前準備 下載:glog, gflags, eigen, ceres solver,地址見https://docs.opencv.org/trunk/db/db8/tutorial_sfm_installation.htmlopencv配置sfm官方說明 Eigen是一個高層次

Android影象濾鏡框架GPUImage從配置到應用

GPUImage簡介 GPUImage 是iOS下一個開源的基於GPU的影象處理庫,提供各種各樣的影象處理濾鏡,並且支援照相機和攝像機的實時濾鏡。GPUImage for Android是它在Android下的實現,同樣也是開源的。其中提供了幾十多種常見的圖片濾鏡API,且

轉載Centos7.3安裝和配置Mysql5.7

Linux安裝mysql aliyun安裝mysql https://blog.csdn.net/qq_35393693/article/details/79994097   遇到問題向下看   (第七步:設定允許遠端登入 Mysql預設不允許遠端登入

PEWindows平臺命令列使用vcvarsall.bat配置編譯環境

###Date: 2017/9/20 一、關於命令列編譯環境的配置方法 對於VS2015,%VS140COMNTOOLS%/VC下就有vcvarsall.bat,用於生成命令列編譯環境。 對於V

ES學習3-請求體查詢

ext 組合 https 傳遞 guide should 學習 text class 1.空查詢 GET /index_2014*/type1,type2/_search {} GET /_search { "from": 30, "size": 10 }

原創Zend Framework 2框架之MVC

spa lov gef rst 當前 mage 匿名函數 skeleton 一個 ZendFramework 2框架之MVC作者:sys(360電商技術組)1.前言Zend Framework 2是zend官方推出的php開源框架,基於php5.3。他全然採用面向對象的代

譯文怎樣在R語言使用SQL命令

bow all label 數據科學 eid tex 鏈接 方法 params 【譯文】怎樣在R語言中使用SQL命令 作者 Fisseha Berhane 對於有SQL背景的R語言學習者而言。sqldf是一個很實用的包,由於它使我們能在R

redis之centos6.x安裝redis3.0.x

local con releases 新建 zxvf 分享 執行 .tar.gz all centos6.9_x86_64 1、下載redis安裝包 http://download.redis.io/releases/redis-3.2.9.tar.gz 2、解壓 tar

Java_SSM(四)Eclipse通過maven引入jar包

osc ati eight wid -- stat ack ips 技術 這篇博文我們介紹一下如何通過eclipse配置setting並引入jar包 (1)eclipse:Window--Preferences--Maven--User Setting 全部完成

MT26ln(1+x)的對數平均放縮

height ont border 技術 wid ack rac alt play 評:1.某種程度上$ln(1+x)\ge \frac{2x}{2+x}$是最佳放縮. 2.這裏涉及到分母為冪函數型的放縮技巧,但是不夠強,做不了這題。MT【26】ln(1+x)的對數

轉載在Angular 2/Typescript聲明全局變量的最佳方式是什麽?

more 中一 keyword 訪問 emit 更新 other link 之間 問題詳細描述 我想在Typescript語言中的Angular 2中聲明一些全局可見的變量。最佳的實踐方法是? 推薦的實現方法 這是最簡單的解決方案,無需使用Service或Observe