1. 程式人生 > >在windows平臺搭建基於nginx的直播伺服器

在windows平臺搭建基於nginx的直播伺服器

1、nginx簡介

   Nginx本身是一個非常出色的HTTP伺服器,FFMPEG是非常好的音視訊解決方案.這兩個東西通過一個nginx的模組nginx-rtmp-module,組合在一起即可以搭建一個功能相對比較完善的流媒體伺服器.這個流媒體伺服器可以支援RTMP和HLS(Live Http Stream);本文基於windows平臺搭建的rtmp伺服器,方便測試,對於不想切換到linux平臺的同學比較方便。

2、準備工具

3、操作步驟

3.1、nginx 1.7.11.3 Gryphon模組下載操作

     下載完成後解壓;
     將解壓後的目錄名:
     nginx 1.7.11.3 Gryphon

      改成:
      nginx-1.7.11.3-Gryphon

3.2、下載伺服器狀態檢查程式 stat.xsl

    將nginx-rtmp-module-master.zip解壓後複製到目錄:nginx-1.7.11.3-Gryphon下,
    保證stat.xls的目錄為:
    nginx-1.7.11.3-Gryphon\nginx-rtmp-module\stat.xsl

3.3、nginx配置檔案 conf\nginx-win.conf 

   開啟conf資料夾找到nginx-win.conf檔案,配置rtmp,(新增rtmp{....})和服務監控

 

 

最終你的推流地址將是rtmp://127.0.0.1:1935/mvapp/stream1其中127.0.0.1可以換為localhost,若為區域網內其他機器則換位192.168.x.x換為本機ip即可,

播放拉流地址與此相同。

3.4、 啟動伺服器

    方式1:進入cmd; 
    > cd nginx-1.7.11.3-Gryphon
    > nginx.exe -c conf\nginx-win-rtmp.conf
   方式2:直接進入目錄點選nginx.exe啟動;    開啟成功後可在工作管理員中檢視nginx.exe的相關程序,也可開啟瀏覽器輸入localhost或者127.0.0.1本機ip,看到下圖即開啟  成功。

 技術分享

也可選擇在cmd中使用命令列的方式檢視:

   命令為tasklist /fi "imagename eq nginx.exe"

  

4、遇到問題

 cmd內執行命令出現80埠被佔用的問題,具體錯誤資訊是: bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)    然後找到佔用80埠的程序號pid
最後一個為程序號,然後進入工作管理員找到pid為你查詢到的那個號碼的程序停止掉即可