Linux服務器下操做:nginx
下載nginx wget nginx.org/download/ng…git
解壓github
$tar -xvf nginx-1.15.3.tar.gz
複製代碼
下載nginx rtmp模塊 wget codeload.github.com/arut/nginx-…shell
解壓vim
$tar -xvf v1.2.1
複製代碼
進入nginx目錄瀏覽器
$cd nginx-1.15.3
複製代碼
執行:安全
#--add-module 指向rtmp模塊目錄
./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1
複製代碼
在這個過程當中可能由於環境不一樣而出現不一樣錯誤,好比缺乏pcre、openssl等,這時候就須要安裝這些庫。bash
執行完後會在 nginx目錄下生成 MakeFile文件, cd nginx-1.15.3 後,執行app
$make install
複製代碼
生成 /bin 目錄,查看bin目錄下的 ./bin/conf/
這個nginx.conf 文件配置實際上是不支持 RTMP服務的, 須要替換成nginx-rtmp-module-1.2.1下的nginx.conf 的文件,在此基礎上稍做修改,bin目錄下的 nginx.conf 作備份
$mv nginx.conf nginx.conf.bak
複製代碼
拷貝./nginx-rtmp-module-1.2.1/test/nginx.conf 到 ./nginx-1.15.3/bin/conf 目錄下
$cd nginx-rtmp-module-1.2.1/test
$cp nginx.conf /root/live/nginx-1.15.3/bin/conf/
複製代碼
查看修改nginx.conf中路徑相關選項:
$vim nginx.conf
複製代碼
user root;
worker_processes 1;
error_log logs/error.log debug;
events {
worker_connections 1024;
}
rtmp {
server {
#注意端口的佔用
listen 1935;
application myapp {
live on;
#丟棄閒置5秒的鏈接
drop_idle_publisher 5s;
}
}
}
http {
server {
#注意端口的佔用
listen 8080;
location /stat {
rtmp_stat all;
rtmp_stat_stylesheet stat.xsl;
}
location /stat.xsl {
#修改成本身nginx-rtmp-module-1.2.1的路徑
root /root/live/nginx-rtmp-module-1.2.1/;
}
location /control {
rtmp_control all;
}
location /rtmp-publisher {
#修改成本身nginx-rtmp-module-1.2.1的路徑
root /root/live/nginx-rtmp-module-1.2.1/test;
}
location / {
#修改成本身nginx-rtmp-module-1.2.1的路徑
root /root/live/nginx-rtmp-module-1.2.1/test/www;
}
}
}
複製代碼
以上配置中查看端口是否佔用:
$lsof -i:8080
$lsof -i:1935
複製代碼
須要注意的是目錄與端口是否被佔用,好比個人8080端口被佔用,我改成了8081,而後須要開放端口。
配置了iptables防火牆的翻下前面的資料,若是沒安裝的阿里雲服務器能夠進入阿里雲控制檯開放
而後點擊配置規則
,在新頁面點擊添加安全組規則
,開放8081端口,而後肯定,就能夠了。
以上須要添加nginx指定的兩個端口:我這裏配置的193五、8080。配置完成後,就能夠啓動nginx了
到nginx根目錄下執行 :
$./bin/sbin/nginx #啓動服務
$./bin/sbin/nginx -s stop #中止服務
複製代碼
在當前目錄 執行 bin/sbin/nginx 便可啓動
bin/sbin/nginx -s stop 中止
必定要在當前目錄啓動,由於上面的配置 error_log logs/error.log debug; 會去執行命令的目錄下查找 logs。
若是error_log 改爲一個絕對路徑 那就不要緊了。
nginx: [emerg] open() "/root/live/bin/logs/error.log" failed (2: No such file or directory)
複製代碼
啓動服務後打開瀏覽器 ,在瀏覽器中輸入 :
【IP】:8081
能訪問就表示配置完成了
以前在此遇到403 forbidden, 在 nginx.conf 下第一行添加 user root;問題解決
至此服務器配置完成。
下載 推流軟件 OBS,配置好相關設置,可自行百度
在來源裏添加顯示捕捉,而後點擊 開始錄製, 開始推流:
可在瀏覽器中看到多出來一條test的流數據,正是我推送的: