Mac上搭建nginx+rtmp直播服務(wù)器的步驟詳解
前言
相信大家都知道nginx是非常優(yōu)秀的開源服務(wù)器,用它來做hls或者rtmp流媒體服務(wù)器是非常不錯(cuò)的選擇,所以小編在網(wǎng)上整理了安裝流程,現(xiàn)在分享給大家并且作備忘。有需要的朋友們可以參考學(xué)習(xí),下面來一起看看吧。
一、安裝Homebrow
已經(jīng)安裝了brow的可以直接跳過這一步。
執(zhí)行命令
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
如果已經(jīng)安裝過,而想要卸載:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/uninstall)"
二、安裝nginx
先glone nginx項(xiàng)目到本地:
brew tap homebrew/nginx
執(zhí)行安裝:
brew install nginx-full --with-rtmp-module
安裝過程比較緩慢,耐心等待
通過操作以上步驟nginx和rtmp模塊就安裝好了,下面開始來配置nginx的rtmp模塊
首先來看看我們的nginx安裝在哪里了
brew info nginx-full
執(zhí)行上面的命令后我們可以看到信息
nginx安裝所在位置
/usr/local/Cellar/nginx-full/1.10.1/bin/nginx
nginx配置文件所在位置
/usr/local/etc/nginx/nginx.conf
三、運(yùn)行nginx
執(zhí)行命令 ,測(cè)試下是否能成功啟動(dòng)nginx服務(wù)
nginx
命令行如下圖所示
在瀏覽器地址欄輸入:http://localhost:8080 (直接點(diǎn)擊)
如果出現(xiàn)
Welcome to nginx!.03
代表nginx安裝成功了
如果終端上提示
nginx: [emerg] bind() to 0.0.0.0:8080 failed (48: Address already in use)
則表示8080
端口被占用了, 查看端口PID
lsof -i tcp:8080
kill掉占用8080端口的PID
kill 9603(這里替換成占用8080端口的PID)
然后重新執(zhí)行nginx
nginx常用方法:重新加載配置文件
nginx -s reload
重新加載日志:
nginx -s reopen
// 停止 nginx
nginx -s stop
// 有序退出 nginx
nginx -s quit
四、配置rtmp
現(xiàn)在我們來修改nginx.conf這個(gè)配置文件,配置rtmp
復(fù)制nginx配置文件所在位置
/usr/local/etc/nginx/nginx.conf
打開Finder Shift + command + G前往,用記事本工具打開nginx.conf
http { …… }
在http節(jié)點(diǎn)后面加上rtmp配置:
rtmp { server { listen 1935; #直播流配置 application rtmplive { live on; #為 rtmp 引擎設(shè)置最大連接數(shù)。默認(rèn)為 off max_connections 1024; } application hls{ live on; hls on; hls_path /usr/local/var/www/hls; hls_fragment 1s; } } }
五、安裝ffmepg工具
brew install ffmpeg
安裝這個(gè)需要等一段時(shí)間等待吧 然后準(zhǔn)備一個(gè)視頻文件作為來推流,然后我們?cè)诎惭b一個(gè)支持rtmp協(xié)議的視頻播放器,Mac下可以用VLC
VLC.04
顯示下圖表示ffmpeg安裝完畢
ffmpeg安裝完畢0.5
六、ffmepg 安裝完成后可以開始推流了
ffmpeg -re -i 你的視頻文件的絕對(duì)路徑(如/Users/lideshan/Downloads/Demo.mp4) -vcodec copy -f flv rtmp://localhost:1935/zbcs/room // 如:ffmpeg -re -i /Users/jiangys/Documents/Document/demo.mp4 -vcodec copy -f flv rtmp://localhost:1935/zbcs/room
這里zbcs是上面的配置文件中,配置的應(yīng)用的路徑名稱;后面的room可以隨便寫。
推流界面:
七、驗(yàn)證視頻
然后電腦上打開vlc這個(gè)播放器軟件 點(diǎn)擊File---->Open Network
在彈出來的框中選擇Network然后輸入U(xiǎn)RL:
rtmp://localhost:1935/zbcs/room
雙擊播放
播放界面
報(bào)錯(cuò)處理
1.ffmepg命令推流的時(shí)候,提示連接失敗。 [tcp @ 0x7ff162504b60] Connection to tcp://localhost:1935 failed (Connection refused), trying next address
出現(xiàn)這個(gè)錯(cuò),是因?yàn)榕渲昧薾ginx.conf后,需要重啟nginx。輸入命令重啟后就沒有問題了
nginx -s reload
2.安裝完nginx后,在瀏覽器地址欄輸入:http://localhost:8080 顯示打不開網(wǎng)頁(yè)
解決方式:由于安裝后nginx服務(wù)器,有時(shí)需要等上幾分鐘才生效。如果還不生效,測(cè)試下是否能成功啟動(dòng)nginx服務(wù),命令
nginx
具體請(qǐng)參考“步驟安裝”第三點(diǎn)。
總結(jié)
好了,到這就基本安裝結(jié)束了,大家安裝步驟一步步來都可以安裝成功的,以上就是這篇文章的全部?jī)?nèi)容,希望能對(duì)大家的學(xué)習(xí)或者工作帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
nginx訪問動(dòng)態(tài)接口報(bào)錯(cuò)404Not Found問題解決
本文主要介紹了nginx訪問動(dòng)態(tài)接口報(bào)錯(cuò)404Not Found問題解決,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03nginx?ingress代理websocket流量的配置方法
ingress?nginx默認(rèn)支持websocket協(xié)議,使用長(zhǎng)連接協(xié)議時(shí)需要注意連接超時(shí)的設(shè)置,文中有提到讀取和發(fā)送超時(shí)的注解參數(shù),通過本文閱讀可以快速掌握,對(duì)nginx?ingress代理websocket相關(guān)知識(shí)感興趣的朋友一起看看吧2022-03-03服務(wù)器的負(fù)載均衡nginx+tomcat實(shí)現(xiàn)動(dòng)靜分離
這篇文章主要為大家介紹了服務(wù)器的負(fù)載均衡nginx+tomcat實(shí)現(xiàn)動(dòng)靜分離的案例實(shí)施步驟以及環(huán)境詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步2022-03-03nginx+iis實(shí)現(xiàn)簡(jiǎn)單的負(fù)載均衡
這篇文章主要為大家詳細(xì)介紹了nginx+iis實(shí)現(xiàn)一個(gè)簡(jiǎn)單的負(fù)載均衡的方法,感興趣的小伙伴們可以參考一下2016-03-03Nginx優(yōu)化服務(wù)之網(wǎng)頁(yè)壓縮的實(shí)現(xiàn)方法
這篇文章主要介紹了Nginx優(yōu)化服務(wù)之網(wǎng)頁(yè)壓縮的實(shí)現(xiàn)方法,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-01-01