环境准备

下载Nginx wget http://nginx.org/download/nginx-1.16.0.tar.gz

解压Nginx tar -zxvf nginx-1.16.0.tar.gz

下载Nginx RTMP模块 wget https://github.com/arut/nginx-rtmp-module/archive/v1.2.1.tar.gz

解压Nginx RTMP模块 tar -zxvf v1.2.1.tar.gz

编译安装

./configure --help > nginx_configure_help.txt 将help输出text方便查看

进入Nginx解压目录,,执行configure:./configure --prefix=./bin --add-module=../nginx-rtmp-module-1.2.1

nginx 中 gzip 模块需要 zlib 库,rewrite模块需要 pcre 库,ssl 功能需要 openssl 库。所以如果服务器未安装这三个依赖库的话会报错,需要先安装这三个依赖库

执行完生成 Makefile 文件

编译:make install

编译完生成bin目录

$ ls

auto bin CHANGES CHANGES.ru conf configure contrib html LICENSE Makefile man objs README src

$ cd bin/

$ ls

conf html logs sbin

conf:配置相关

html:欢迎页面、错误页面

logs:日志存放区

sbin:可执行文件存放区

修改配置

Nginx默认不支持rtmp,需要修改配置文件。

如何修改,可以参考:nginx-rtmp-module-1.2.1/test/nginx.conf

进入bin/conf目录,找到 nginx.conf 文件。

worker_processes 1;

error_log logs/error.log debug;

events {

worker_connections 1024;

}

#rtmp标签

rtmp {

#服务标签,一个rtmp服务中可以有多个server标签,每个标签可监听不同端口号

server {

#注意端口占用,1935为默认端口

listen 1935;

#应用标签,一个服务标签中可以有多个应用标签

application myapp {

live on;

#丢弃闲置5s的连接

drop_idle_publisher 5s;

}

}

}

http {

server {

#注意端口占用

listen 8080;

#数据统计模块,将流媒体的状态记录到 stat.xsl 中

location /stat {

rtmp_stat all;

rtmp_stat_stylesheet stat.xsl;

}

#将stat.xsl 访问目录指定到nginx-rtmp-module中

location /stat.xsl {

#注意目录

root /root/he/nginx-rtmp-module-1.2.1/;

}

#控制器模块,可录制直播视频、踢出推流/拉流用户、重定向推流/拉流用户

location /control {

rtmp_control all;

}

location /rtmp-publisher {

#注意目录

root /root/he/nginx-rtmp-module-1.2.1/test;

}

location / {

#注意目录

root /root/he/nginx-rtmp-module-1.2.1/test/www;

}

}

}

启动服务

进入sbin目录尝试执行nginx:

$ cd sbin/

$ ./nginx -t

nginx: [alert] could not open error log file: open() "./bin/logs/error.log" failed (2: No such file or directory)

-t 表示测试。

仔细看错误说明,"./bin/logs/error.log" 文件找不到?也就是当前目录下找不到 bin/logs/error.log。我们执行的当前目录是sbin,里面只有可执行文件nginx,当然找不到了。所以需要到nginx根目录下执行。

$cd ../../

$ ./bin/sbin/nginx -t

nginx: the configuration file ./bin/conf/nginx.conf syntax is ok

nginx: configuration file ./bin/conf/nginx.conf test is successful

测试通过,可以正式执行,启动服务了。

$ ./bin/sbin/nginx

查看nginx服务进程。

$ ps aux | grep nginx

root 7245 0.0 0.2 53368 5320 ? Ss 15:47 0:00 nginx: master process ./bin/sbin/nginx

nobody 7246 0.0 0.3 53768 6076 ? S 15:47 0:00 nginx: worker process

root 7263 0.0 0.0 112708 984 pts/4 R+ 15:50 0:00 grep --color=auto nginx

服务启动成功。

测试服务

在windows浏览器中通过http来访问:http://xxx.xxx.xxx.xxx:8080/

报错:403 Forbidden

其实前面我们查看nginx进程的时候,可以发现master process和worker process的用户不一致,一个是root而另一个是nobody

重新修改nginx.conf文件,添加root用户。

#设置为root用户

user root;

worker_processes 1;

error_log logs/error.log debug;

...

配置文件更改了,需要重新加载配置文件。

./bin/sbin/nginx -s reload

刷新浏览器就正常了。

停止服务

1,从容停止服务

这种方法较stop相比就比较温和一些了,需要进程完成当前工作后再停止。

./bin/sbin/nginx -s quit

2,立即停止服务

这种方法比较强硬,无论进程是否在工作,都直接停止进程。

./bin/sbin/nginx -s stop

3,杀死进程

pkill -9 nginx

直播推流测试

推流可以使用EV录频。

设置串流地址:rtmp://xxx.xxx.xxx.xxx/myapp/

播放可以使用EV播放器。

播放网络流地址:rtmp://xxx.xxx.xxx.xxx/myapp/

html5直播服务端搭建,直播推流服务器端搭建相关推荐

  1. Windows远程桌面实现之十一:桌面屏幕通过各种直播服务端直播(RTSP, RTMP, HTTP-FLV, HLS)

    by fanxiushu 2020-01-23 转载或引用请注明原始作者. 此文还是基于xdisp_virt远程项目中的一个子功能.在把xdisp_virt移植到各种平台之后,就想着再做点什么新功能, ...

  2. 救世之树服务端开服架设服务器搭建教程

    救世之树服务端开服架设服务器搭建教程 救世之树架设教程 准备好服务端(版本).服务器.域名开始实操:我是艾西 需要给服务器开启虚拟内存,设置好后服务器需要重启下 第一步:解压服务端到D盘 右键[000 ...

  3. 魔域服务端架设开服服务器搭建教程

    魔域服务端架设开服服务器搭建教程 想要魔域开服,需要先了解搭建魔域需要哪些程序和整个开服的一个流程: 游戏服务端(包含了版本.引擎.登入器) 服务器 域名 支付平台 服务端:怀旧.麒麟.众神之巅.复古 ...

  4. 大话西游服务端开服架设服务器搭建教程

    大话西游服务端开服架设服务器搭建教程 大话西游一款回合制角色扮演手游,游戏内包含人族.仙族.魔族.鬼族四大种族,每个种族各有4个角色可供玩家选择.相信很多玩这款游戏的玩家也有不少想知道自己怎么可以开一 ...

  5. red5+adobe flash media live(或OBS) +酷播播放器实现简单的直播及回看(四)------怎样在服务端存储直播流

    本篇文章来讨论解决如何在red5服务器端存储直播流 问题简述: 一开始在设计直播回放系统的时候,计划的视频存储是通过推流软件,但使用推流软件只能够把直播流存储在本地,不能够在服务器端存储,这样就会造成 ...

  6. nginx+rtmp实现直播服务端

    目前直播系统从功能上分为两种,直播和互动.普通直播对播放延迟要求不高,推流端也能设置本地延迟推流时间.互动直播对低延时要求较高,主要应用在即时通讯和在线教育等行业,从推流端采集到拉流端播放一般延时不超 ...

  7. 推荐花椒直播服务端的 4 个开源项目

    新年伊始,花椒直播服务端系统开发组对多个内部广泛使用到的基础服务开源,包括之前介绍过的总线系统和分布式 cron 管理: gokeeper - 集中化配置管理中心 pepperbus - 花椒直播总线 ...

  8. 传说ol服务器端网站源码,千古传说一键服务端+IP修改+GM+ID+搭建教程

    千古传说一键服务端+IP修改教程+GM后台+数据修改+人物ID 架设教程: 1.必须安装-jdk8.exe,一直下一步等到安装完成. 2.将压缩包解压到D盘根目录.D:\I4sy_Qgcs 3.本端默 ...

  9. 5 分钟完成 Nginx 直播服务部署(直播 + 分流 + 画面水印)

    个人博客请访问 http://www.x0100.top 最近帮朋友的公司部署了一套分流+水印的直播系统 顺手打包成docker镜像,方便大家需要用到的时候开箱即用,不需要百度一些零碎的文章 也可做简 ...

最新文章

  1. 美媒评全球十家增速最快IT办事公司 当当网居首
  2. Proteus与Keil联调
  3. 派生类到基类的转换 和基类到派生类的转换
  4. java文件放桌面怎么运行不了,不可能使用Java桌面在网络上启动文件吗?
  5. 未找到要求的 from 关键字_性能优化|这恐怕是解释Explain关键字最全的一篇文章
  6. .NET Core 中导入导出Excel
  7. cors 前后端分离跨域问题_前后端分离之CORS跨域访问踩坑总结
  8. Silverlight 属性样式、控件模板、视觉状态
  9. cocos2dx 魔塔项目总结(一)
  10. iOS中的谓词(NSPredicate)使用
  11. thrift编写服务端 客户端
  12. 无外网环境下CentOS 7安装MySQL 5.7.18
  13. JAVA基础(2/17)-基本语法_数据类型
  14. 5星好书———电子技术基础数字部分(第6版)
  15. Linux 网易云音乐问题汇总
  16. 文娱干货丨如何体系化构建优质社区氛围?
  17. UML之教学管理系统——1、需求分析
  18. Linux系统下计算机C语言的编程技巧
  19. 【LIS】【打地鼠】
  20. 万科又出新招,小市民只有看热闹的份

热门文章

  1. 分享一个项目平台原型图
  2. win10 opencv-4.1.0 环境配置
  3. 什么是网站的源代码?
  4. 关于n阶线性齐次常微分的特征方程特征根相同时解的推导
  5. Causality matters in medical imaging 文献解读
  6. APP抓不到包及问题解决方法
  7. Python抓取QQ音乐歌单并分析
  8. 基于TIG的云原生系统监控方案
  9. 第31讲:永久存储:腌制一缸美味的泡菜
  10. 数字手写体识别python实现(全连接神经网络)