RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Linux下搭建nginx服務(wù)器

嵌入式技術(shù) ? 來源:嵌入式技術(shù) ? 作者:嵌入式技術(shù) ? 2022-08-31 08:55 ? 次閱讀

Linux下搭建nginx服務(wù)器

Nginx (engine x) 是一個(gè)高性能的HTTP和反向代理web服務(wù)器,同時(shí)也提供了IMAP/POP3/SMTP服務(wù)。其特點(diǎn)是占有內(nèi)存少,并發(fā)能力強(qiáng),事實(shí)上nginx的并發(fā)能力確實(shí)在同類型的網(wǎng)頁服務(wù)器中表現(xiàn)較好。

Nginx 代碼完全用C語言從頭寫成,已經(jīng)移植到許多體系結(jié)構(gòu)和操作系統(tǒng),包括:Linux、FreeBSD、Solaris、Mac OS X、AIX以及Microsoft Windows。Nginx有自己的函數(shù)庫,并且除了zlib、PCRE和OpenSSL之外,標(biāo)準(zhǔn)模塊只使用系統(tǒng)C庫函數(shù)。而且,如果不需要或者考慮到潛在的授權(quán)沖突,可以不使用這些第三方庫。

流媒體(streaming media)是指將一連串的媒體數(shù)據(jù)壓縮后,經(jīng)過網(wǎng)上分段發(fā)送數(shù)據(jù),在網(wǎng)上即時(shí)傳輸影音以供觀賞的一種技術(shù)與過程,此技術(shù)使得數(shù)據(jù)包得以像流水一樣發(fā)送;如果不使用此技術(shù),就必須在使用前下載整個(gè)媒體文件。流式傳輸可傳送現(xiàn)場(chǎng)影音或預(yù)存于服務(wù)器上的影片,當(dāng)觀看者在收看這些影音文件時(shí),影音數(shù)據(jù)在送達(dá)觀看者的計(jì)算機(jī)后立即由特定播放軟件播放。

RTMP是Real Time Messaging Protocol(實(shí)時(shí)消息傳輸協(xié)議)的首字母縮寫。該協(xié)議基于TCP,是一個(gè)協(xié)議族,包括RTMP基本協(xié)議及RTMPT/RTMPS/RTMPE等多種變種。RTMP是一種設(shè)計(jì)用來進(jìn)行實(shí)時(shí)數(shù)據(jù)通信網(wǎng)絡(luò)協(xié)議,主要用來在Flash/AIR平臺(tái)和支持RTMP協(xié)議的流媒體/交互服務(wù)器之間進(jìn)行音視頻和數(shù)據(jù)通信。支持該協(xié)議的軟件包括Adobe Media Server/Ultrant Media Server/red5等。RTMP與HTTP一樣,都屬于TCP/IP四層模型的應(yīng)用層。

RTMP 是一種基于 TCP 的、用于數(shù)據(jù)、音頻視頻傳輸?shù)碾p向通信協(xié)議。大部分具備行業(yè)標(biāo)準(zhǔn)的編碼器(如 encoding.com、Bitmovin、Harmonic 和 AWS Elemental 等)都能夠生產(chǎn) RTMP 數(shù)據(jù)源。同樣,Twitch、YouTube、Facebook Live 等流媒體服務(wù)和 Dacast、Ant Media、Wowza 等直播平臺(tái)都能接收 RTMP 推流

RTMP 由 Adobe 推出,用于超級(jí)流行的 Adobe Flash 播放器中,數(shù)百萬網(wǎng)站曾使用這款播放器向用戶展示視頻。在鼎盛時(shí)期,大約超過 90~95% 有視頻內(nèi)容的網(wǎng)站上都使用 Adobe Flash 播放器來播放視頻。

RTMP 的工作原理是:通過建立和維護(hù) RTMP 客戶端和 RTMP 服務(wù)端之間的通信路徑來實(shí)現(xiàn)快速、可靠的數(shù)據(jù)傳輸。

1.Linux下搭建Nginx流媒體服務(wù)器

1.1 下載必要工具

??(1)安裝必要工具

[wbyq@wbyq sbin]$ sudo apt-get install build-essential libpcre3 libpcre3-dev libssl-dev

??(2)創(chuàng)建nginx文件夾,下載Nginx服務(wù)器必要的軟件包

[wbyq@wbyq ~]$ mkdir nginx
[wbyq@wbyq nginx]$ wget http://nginx.org/download/nginx-1.10.3.tar.gz
[wbyq@wbyq nginx]$ wget http://zlib.net/zlib-1.2.12.tar.gz
[wbyq@wbyq nginx]$ wget https://nchc.dl.sourceforge.net/project/pcre/pcre/8.43/pcre-8.43.tar.gz
[wbyq@wbyq nginx]$ wget https://www.openssl.org/source/openssl-1.0.2k.tar.gz
[wbyq@wbyq nginx]$ wget https://github.com/arut/nginx-rtmp-module/archive/master.zip

??(3)解壓nginx-1.10.3.tar.gz、zlib-1.2.12.tar.gz、pcre-8.43.tar.gz、openssl-1.0.2k.tar.gz、master.zip

[wbyq@wbyq nginx]$ unzip master.zip
[wbyq@wbyq nginx]$ tar xvf nginx-1.10.3.tar.gz
[wbyq@wbyq nginx]$ tar xvf openssl-1.0.2k.tar.gz 
[wbyq@wbyq nginx]$ tar xvf zlib-1.2.12.tar.gz 
[wbyq@wbyq nginx]$ tar xvf pcre-8.43.tar.gz 

??(4)配置nginx,生成Makefile

[wbyq@wbyq nginx-1.10.3]$ cd nginx-1.10.3/
[wbyq@wbyq 123]$ ./configure --prefix=/usr/local/nginx --with-debug --with-pcre=../pcre-8.43 --with-zlib=../zlib-1.2.12 --with-openssl=../openssl-1.0.2k --add-module=../nginx-rtmp-module-master

?將./obj/Makefile中的 -Werror 刪除

[wbyq@wbyq nginx-1.10.3]$ vim objs/Makefile
pYYBAGMOFhSAEgDJAAFS-pmVMLU786.png#pic_center

??(5)編譯安裝nginx

[wbyq@wbyq nginx-1.10.3]$ make
[wbyq@wbyq nginx-1.10.3]$ sudo make install 

1.2 配置nginx

??(1)安裝成功存放應(yīng)用程序位置:/usr/local/nginx/sbin
??查看版本信息

[wbyq@wbyq sbin]$ pwd
/usr/local/nginx/sbin
[wbyq@wbyq sbin]$ ./nginx -v 
nginx version: nginx/1.10.3

??(2)在配置文件里加入RTMP服務(wù)器的配置
??在/usr/local/nginx/conf目錄下打開nginx.conf 文件,在最下面添加以下信息:

rtmp {  
    server {  
        listen 8888; #監(jiān)聽端口號(hào)  
		#rtmp直播
        application live {  #應(yīng)用名稱
            live on;  #開啟
			record all ;#錄制所有
			record_unique on;#添加時(shí)間戳
			record_path "./video"; #視頻緩存的路徑
			record_suffix -%Y-%m-%d-%H_%M_%S.flv;#錄制文件的文件名稱:年-月-日-時(shí)-分-秒.flv
        }
     }  
}

??(3)檢查配置文件是否正確

[wbyq@wbyq ~]$ sudo /usr/local/nginx/sbin/nginx -t
nginx: the configuration file /home/wbyq/123/nginx-1.10.3/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /home/wbyq/123/nginx-1.10.3/nginx/conf/nginx.conf test is successful

1.3 啟動(dòng)nginx服務(wù)

??(1)啟動(dòng)nginx服務(wù)

[wbyq@wbyq ~]$ sudo /usr/local/nginx/sbin/nginx 

??(2)查看nginx服務(wù)是否啟動(dòng)成功

[wbyq@wbyq ~]$ netstat -ltn
poYBAGMOFhWALJaiAAGadvUz5lw439.png#pic_center

2.通過ffmepg推流

[wbyq@wbyq ~]$ ffmpeg -thread_queue_size 128 -f video4linux2 -r 12 -s 800x480 -i /dev/video0 -vcodec libx264 -f flv "rtmp://127.0.0.1:8888/live/ashui"

-thread_queue_size 128 --線程數(shù)據(jù)隊(duì)列大小
-f video4linux2 --攝像頭框架V4L2
-r 12 --指定幀率,每秒12幀
-s 800x480 --圖像尺寸
-i /dev/video0 指定攝像頭
-vcodec libx264 編碼標(biāo)準(zhǔn)
“rtmp://127.0.0.1:8888/live/ashui” --rtmp服務(wù)器地址,127.0.0.1:8888服務(wù)器ip和端口號(hào),lives在配置文件里已經(jīng)固定,ashui可以隨意填寫

3.通過mplayer拉流

[wbyq@wbyq ~]$ mplayer rtmp "rtmp://127.0.0.1:8888/live/ashui"
pYYBAGMOFhWAUb23AAf6VJbq7W4099.png#pic_center

3.在windows下使用VLC拉流

??服務(wù)端IP:

poYBAGMOFhaAXLTeAAEn-ADjmKw732.png#pic_centerpYYBAGMOFhaAayvpAABqOY6_cpc877.png#pic_center

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11292

    瀏覽量

    209318
  • 服務(wù)器
    +關(guān)注

    關(guān)注

    12

    文章

    9123

    瀏覽量

    85322
  • nginx
    +關(guān)注

    關(guān)注

    0

    文章

    149

    瀏覽量

    12170
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    Linux開發(fā)_CentOS7.4服務(wù)器搭建NFS、NGINX服務(wù)器,安裝ffmpeg、Qt環(huán)境

    在CentOS7.4服務(wù)器版本的環(huán)境搭建NFS服務(wù)器、安裝ffmpeg、安裝nginx服務(wù)器、
    的頭像 發(fā)表于 07-14 13:45 ?1590次閱讀
    <b class='flag-5'>Linux</b>開發(fā)_CentOS7.4<b class='flag-5'>服務(wù)器</b><b class='flag-5'>搭建</b>NFS、<b class='flag-5'>NGINX</b><b class='flag-5'>服務(wù)器</b>,安裝ffmpeg、Qt環(huán)境

    NanoPi NEO - 可靠的Nginx 網(wǎng)絡(luò)服務(wù)器

    ;}[...]12. 最后,重新加載nginx 服務(wù):#service nginx reload至此,nginx服務(wù)器
    發(fā)表于 06-20 15:43

    Nginx的安裝和啟動(dòng)服務(wù)

    Mac上搭建直播服務(wù)器 Nginx+rtmp
    發(fā)表于 08-05 14:54

    ubuntu搭建NFS服務(wù)器

    :192.168.2.51為NFS服務(wù)器主機(jī)IP#ls /mnt/說明:mount命令可以在另一個(gè)Linux系統(tǒng)執(zhí)行。這樣就可以實(shí)現(xiàn)ubuntu搭建NFS
    發(fā)表于 11-02 16:08

    Nginx服務(wù)器搭建步驟

    搭建Nginx服務(wù)器②SSL加密網(wǎng)站③基于域名虛擬主機(jī)
    發(fā)表于 04-07 16:20

    教你linux搭建web服務(wù)器

    教你linux搭建web服務(wù)器和大家分享了一份配置文檔,希望對(duì)您用linux搭建web服務(wù)器有所
    發(fā)表于 12-28 14:18 ?8863次閱讀

    linux系統(tǒng)搭建ftp服務(wù)器的配置方法

    很久以前知道linux搭建ftp服務(wù)器的軟件是wuftp,現(xiàn)在真的時(shí)代變了,上網(wǎng)看一幾乎全世界的人都用proftpd了!趕個(gè)潮流,我也用
    發(fā)表于 02-15 14:13 ?7710次閱讀

    linuxsamba服務(wù)器搭建配置

    linuxsamba服務(wù)器搭建配置是使用linux開發(fā)系統(tǒng)時(shí)經(jīng)常要配置的一步,只有這頻配置好,不系操作系統(tǒng)間才能資源共享。
    發(fā)表于 03-19 18:59 ?13次下載

    Nginx架構(gòu)介紹 Nginx服務(wù)器模型分析

    Nginx是一款免費(fèi)的、開源的、高性能、模塊化、輕量級(jí)的HTTP服務(wù)器、反向代理服務(wù)器以及電子郵件(IMAP/POP3)代理服務(wù)器。
    的頭像 發(fā)表于 01-10 16:32 ?9213次閱讀
    <b class='flag-5'>Nginx</b>架構(gòu)介紹 <b class='flag-5'>Nginx</b><b class='flag-5'>服務(wù)器</b>模型分析

    如何搭建Linux服務(wù)器的詳細(xì)資料說明

    本文檔的主要內(nèi)容詳細(xì)介紹的是如何搭建Linux服務(wù)器的詳細(xì)資料說明主要內(nèi)容包括了:1、搭建telnet服務(wù)器,2、
    發(fā)表于 04-18 08:00 ?10次下載
    如何<b class='flag-5'>搭建</b><b class='flag-5'>Linux</b><b class='flag-5'>服務(wù)器</b>的詳細(xì)資料說明

    linux如何搭建web服務(wù)器

    linux搭建web服務(wù)器流程如下
    發(fā)表于 06-08 09:09 ?9239次閱讀
    <b class='flag-5'>linux</b>如何<b class='flag-5'>搭建</b>web<b class='flag-5'>服務(wù)器</b>

    服務(wù)器怎么搭建_服務(wù)器怎么安裝系統(tǒng)

     自己搭建服務(wù)器,需要什么樣的條件呢,它是一個(gè)怎么樣的過程。下面就為大家介紹一如何搭建自己的服務(wù)器
    的頭像 發(fā)表于 07-24 09:46 ?1.9w次閱讀
    <b class='flag-5'>服務(wù)器</b>怎么<b class='flag-5'>搭建</b>_<b class='flag-5'>服務(wù)器</b>怎么安裝系統(tǒng)

    LinuxApache服務(wù)器的安裝和配置

    LinuxApache服務(wù)器的安裝和配置(現(xiàn)代電源技術(shù)的發(fā)展概況)-LinuxApache服務(wù)器
    發(fā)表于 08-31 16:22 ?8次下載
    <b class='flag-5'>Linux</b><b class='flag-5'>下</b>Apache<b class='flag-5'>服務(wù)器</b>的安裝和配置

    【技術(shù)分享】如何在嵌入式Linux平臺(tái)上使用Nginx搭建RTMP流媒體服務(wù)器?

    RTMP作為目前主流的流媒體傳輸協(xié)議,廣泛應(yīng)用于音視頻領(lǐng)域。那么我們?nèi)绾慰焖僭谇度胧桨遄由?b class='flag-5'>搭建起自己的rtmp流媒體服務(wù)器?本篇文章將帶大家實(shí)踐一。 ?? 概述 Nginx是一個(gè)以高
    的頭像 發(fā)表于 01-05 15:15 ?658次閱讀

    【技術(shù)分享】如何在嵌入式Linux平臺(tái)上使用Nginx搭建RTMP流媒體服務(wù)器?

    RTMP作為目前主流的流媒體傳輸協(xié)議,廣泛應(yīng)用于音視頻領(lǐng)域。那么我們?nèi)绾慰焖僭谇度胧桨遄由?b class='flag-5'>搭建起自己的rtmp流媒體服務(wù)器?本篇文章將帶大家實(shí)踐一。概述Nginx是一個(gè)以高效穩(wěn)定著稱
    的頭像 發(fā)表于 01-13 09:27 ?1302次閱讀
    【技術(shù)分享】如何在嵌入式<b class='flag-5'>Linux</b>平臺(tái)上使用<b class='flag-5'>Nginx</b><b class='flag-5'>搭建</b>RTMP流媒體<b class='flag-5'>服務(wù)器</b>?
    RM新时代网站-首页