首頁 >後端開發 >php教程 >nginx反向代理TCP,取RTMP流

nginx反向代理TCP,取RTMP流

WBOY
WBOY原創
2016-07-29 08:56:082374瀏覽

nginx反向代理TCP,取RTMP流

一、說明
nginx預設只支援HTTP反向代理,如果需要支援TCP反向代理需加入tcp代理模組:nginx_tcp_proxy_module。

二、原料
1.nginx_tcp_proxy_module
下載地址:
wget https://github.com/yaoweibin/nginx_tcp_proxy_module/archive/master.zip

2.nginx原始碼
http://nginx.org/download/nginx-1.6.3.tar.gz

三、步驟
1.解壓縮nginx

2.解壓縮nginx_tcp_proxy_module
解壓縮至/nginx-1.6.3/src/nginx_tcp_proxy_module

3.patch

<code>cd /usr/wkdir/nginx-<span>1.6</span><span>.3</span><span>patch</span> -p1 < src/nginx_tcp_proxy_module/tcp.<span>patch</span></code>

4.編譯&安裝

<code>./configure --<span>add</span>-<span>module</span>=src/nginx_tcp_proxy_module-master</code>

如果報錯缺少庫,則安裝對應函式庫,如opensslee繼續安裝

.修改設定檔

在nginx.conf中加入,模組指令是TCP,它是不屬於HTTP框架內的,所以和HTTP{}同級

<code>ubuntu下解决办法:

apt<span>-get</span> install openssl

apt<span>-get</span> install libssl<span>-dev</span>centos下解决办法:

yum <span>-y</span> install openssl openssl<span>-devel</span></code>

6.測試
啟動nginx

<code><span>make</span><span>make</span> install</code>

啟動srs

<code>tcp {
    upstream proxy_name {
        <span># simple round-robin</span><span>server</span> localhost:<span>1935</span>;<span>#需要代理的端口</span><span>#check interval=3000 rise=2 fall=5timeout=1000;</span><span>#check interval=3000 rise=2 fall=5timeout=1000</span><span>#check interval=3000 rise=2 fall=5timeout=1000</span><span>#check_http_send "GET /HTTP/1.0\r\n\r\n";</span><span>#check_http_expect_alive http_2xxhttp_3xx;</span>
    }

    <span>server</span> {
        listen <span>8888</span>; <span>#代理8888端口</span>        proxy_pass proxy_name;
    }
}</code>
使用ffmpeg推rtmp流到srs伺服器(連接埠1935),然後透過vlc或其他方式到代理埠8888取得rtmp流.

自測成功!

')​​.addClass('pre-numbering').hide(); $(this).addClass('has-numbering').parent().append($numbering); for (i = 1; i

').text(i)); }; $numbering.fadeIn(1700); }); });

以上就介紹了nginx反向代理TCP,取RTMP流,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn