在阿里雲伺服器上搭建基於nginx的直播服務
阿新 • • 發佈:2018-12-17
對於沒有接觸過nginx的我,在看了別人搭建的直播服務後心癢癢了,也就照著搭建了一個直播服務,我是在阿里雲伺服器上搭建的,首先來說一下阿里雲伺服器,我買的是一個ECS的雲伺服器,系統是CentOS7
然後用Xshell連線上我的伺服器,發現連線不上,原來是阿里雲伺服器的安全策略在起作用,預設埠是不開放的,所以我們需要開放埠,開啟控制檯,找到自己的雲伺服器,開啟例項,然後開啟安全組去配置規則
在這裡開放需要用到的埠,我開放了21,22,80,81號埠,然後我們去安裝nginx和rtmp模組
1,安裝rtmp及nginx
獲取rtmp安裝包,百度網盤。
獲取nginx安裝包,百度網盤
[[email protected] ~]# ls
anaconda-ks.cfg nginx-1.8.1.tar.gz 公共 視訊 文件 音樂
initial-setup-ks.cfg nginx-rtmp-module-master.zip 模板 圖片 下載 桌面
2,解壓壓縮包
[[email protected] ~]# unzip nginx-rtmp-module-master.zip
[[email protected] ~]# tar -xvf nginx-1.8.1.tar.gz
3,編譯安裝nginx
[[email protected] ~]# cd nginx-1.8.1/
[[email protected] ~]# ./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
當然都知道編譯安裝的前提是要有編譯安裝的工具,所以先來安裝一下編譯安裝的工具
[[email protected] nginx-1.8.1]# yum groupinstall "development tools" -y
[[email protected] nginx-1.8.1]# yum install openssl-devel openssl -y
然後再來configure
[[email protected] nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
./configure: error: no ../nginx-rtmp-module/config was found
出現錯誤,找不到檔案,改rtmp目錄名即可
[[email protected] nginx-1.8.1]# cd
[[email protected] ~]# mv nginx-rtmp-module-master nginx-rtmp-module
繼續
[[email protected] nginx-1.8.1]# ./configure --prefix=/usr/local/nginx --add-module=../nginx-rtmp-module --with-http_ssl_module
這樣就成功了。
編譯安裝
[[email protected] nginx-1.8.1]# make&&make install
至此,nginx安裝完畢,接下來便是編輯配置檔案
4,編輯nginx配置檔案
#user nobody;
worker_processes 1;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
server {
listen 81;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}
}
rtmp {
server {
listen 1935;
application hls {
live on;
hls on;
hls_path /usr/local/nginx/html/hls;
hls_fragment 2s;
}
}
}
這便是我的配置檔案,我沒有監聽80埠而監聽的81埠
[[email protected] nginx-1.8.1]# mkdir /usr/local/nginx/html/hls/
5,啟動nginx
[[email protected] nginx]# cd /usr/local/nginx/
[[email protected] nginx]# ./sbin/nginx
6,推流
下載OBS
在設定之中推流
流名稱可以任意填寫,我填的是test
6,下載vlc,串流
在串流網路中輸入URL
rtmp://XXX/hls/test XXX為主機IP
串流之後即可看到推流內容
這樣,直播服務搭建完畢