nginx rtmp 推流权限验证问题。
web服务器+直播系统:nginx 1.12.1 nginx-rtmp-module 1.2.0
推流设备:手机客户端,网页推流,obs
推流地址:rtmp://192.168.1.1:8090/live/test?pass=123
test为用户名,123为密码
现在的情况是live/后面不管写什么都可以推出去,虽然也触发了publish.php页面,现在是不管有没有用户都推,也查询了数据库,查询到了用户名该怎么处理,没有查询到该怎么处理,不知道写什么,下边程序有说明
nginx.conf配置(部分):
listen 1935;
notify_method POST;
application live {
live on;
publish_notify on;
#当有设备推流时,触发publish.php
on_publish 192.168.1.1:8090/publish.php;
}
publish.php文件代码:
<?php
@$name=trim($_REQUEST["name"]);
@$pass=trim($_REQUEST["pass"]);
//加了一个写文件操作,是为了验证是否触发了publish.php这个文件,经验证确实触发了。
$myfile = fopen("testfile.txt", "w");
//如果都不是空值执行数据库查询
if(!empty($name) and !empty($pass))
{
require "function_php/function.php";
conn();//调取连接数据库函数
//查询数据库中是否存在此用户
$sql="select * from tbl_user where user_name='$name' and user_pass='$pass'";
$query=$conn->query($sql);
$row=$query->num_rows;
if ($row ==1 )
{
//如果有用户存在把用户名、密码写到文件里,也确实写了。现在的问题是验证正确以后,不知道怎么写,如何告诉nginx.conf文件
fwrite($myfile,$name."\n");
fwrite($myfile,$pass."\n");
fwrite($myfile,$row."\n");
}
else
{
//如果用户不存在也把用户名和密码写到文件里 验证不正确该怎么写呢?如何停止推流
fwrite($myfile,$name."\n");
fwrite($myfile,$pass."\n");
fwrite($myfile,$row."\n");
}
$query->free_result();
$conn->close();
}
else
{
header('HTTP/1.0 404 Not Found');
}
fclose($myfile);
?>
相关推荐
nginx--vlc.rar
windows下搭建基于nginx的rtmp服务器(简单粗暴),下载可以直接使用,赠送vlc
Linux环境傻瓜式nginx+rtmp+ffmpeg套餐安装详解(获取拉流人数)
本文提供了在Linux环境下使用nginx、rtmp和ffmpeg进行傻瓜式安装的详细教程,旨在帮助读者快速搭建起一个功能强大的流媒体服务器。文章首先介绍了nginx、rtmp和ffmpeg的基本概念及其在流媒体服务中的作用,随后详细阐述了各个组件的安装步骤和配置方法。通过本文的指导,读者可以轻松完成nginx+rtmp+ffmpeg的安装和配置,实现流媒体服务器的搭建。 在安装完成后,文章还介绍了如何获取拉流人数的方法。通过nginx的rtmp模块提供的统计功能,可以实时查看当前正在拉流的客户端数量,帮助管理员了解服务器的负载情况和用户的使用情况。此外,文章还提供了一些优化建议,帮助读者提高流媒体服务器的性能和稳定性。 本文适合对Linux环境和流媒体技术有一定了解的读者阅读,特别是对于想要快速搭建起自己的流媒体服务器并获取拉流人数的用户来说,更是一篇不可多得的好文章。通过本文的学习,读者不仅可以掌握nginx+rtmp+ffmpeg的安装和配置,还能深入了解流媒体服务器的运作机制和优化方法,为未来的学习和工作打下坚实的基础。
Nginx搭建RTMP直播服务器[项目代码]
本文详细介绍了如何使用Nginx和nginx-rtmp-module模块搭建一个功能完整的RTMP/HLS流媒体直播服务器。文章首先强调了Nginx在异步IO事件处理上的性能优势,然后逐步指导读者完成环境准备,包括安装gcc、OpenSSL、g++、pcre、zlib等依赖库,以及编译安装Nginx并添加RTMP模块。核心部分是对Nginx配置文件的解析,重点说明了rtmp和http两大配置块,特别是RTMP协议中application的配置,如live直播应用、vod点播应用和hls流应用,并详细解释了hls_fragment、hls_playlist_length、hls_sync等关键参数的作用和优化方法,以降低HLS延迟。文章还提供了使用systemctl管理Nginx服务的方法,以及通过ffmpeg推流和使用VLC、FFplay等工具拉流的测试案例。最后,文章简要提及了点播、直播和回看功能,并指出虽然通过Nginx搭建原型系统简单快捷,但将其转化为商业用途仍需在性能优化、网络传输和子系统构建等方面进行大量工作。
windows版本编译配置好nginx
这里只是最基本nginx配置,Windows版本nginx,支持RTMP模块已经配置完成,并建立live实例,下载完把nginx-1.7.11.3-Gryphon放入一个没有中文的路径中。
视频网站项目的源码
一个视频网站 有登陆 充值 直播等各种功能 大家可以参考参考


