nginx - nginx rtmp conf 使用参数
问题描述
我使用 nginx - rtmp 插件模块配置服务器。
问题是rtmp发布。
rtmp 插件模块支持“on_publish_done”命令。
https://github.com/arut/nginx-rtmp-module/wiki/Directives#on_publish_done
我想要这样。
on_publish_done http://MY_SERVER/$APP/$NAME ;
在 nginx 配置文件(nginx.conf)中可以使用 $arg_XXX 值。
但是我的 conf 文件无法观察到值。只观察字符串“$arg_app”、“$arg_name”。
如何观察 $arg_app, $arg_name ??
这是我的 conf 文件。
# HTTP can be used for accessing RTMP stats
http {
access_log /Users/steve/dev/workspace/nginx/logs/access.log;
server {
listen 8080;
location /local_redirect {
rewrite ^.*$ newname? permanent;
}
location /cast {
# Serve HLS fragments
types {
application/vnd.apple.mpegurl m3u8;
video/mp2t ts;
}
root /Users/steve/dev/workspace/nginx/tmp;
add_header Cache-Control no-cache;
}
}
}
rtmp {
access_log /PATH/nginx/logs/rtmp-access.log;
server {
listen 1935;
chunk_size 4000;
application cast {
live on;
publish_notify on;
hls on;
hls_path /PATH/workspace/nginx/out;
hls_nested on;
hls_fragment 1s;
hls_playlist_length 12s;
}
notify_method get;
on_publish_done http://127.0.0.1:5000/$arg_app/$arg_name ; ##PROBLEM HERE!!
}
}
解决方案
[下图显示位于字符 r 和 b 之间的带有下划线的变量运行良好!][1]
对我来说,下面使用带有 -c 标志的 bash 命令的代码有效!试试吧兄弟
exec_publish_done bash -c "/var/hls/ex.sh ${name}";
推荐阅读
- maven - 为 Maven pom 提供外部参数并在 application.properties 文件中替换相同的参数
- java - 在数组中打印用户输入显示为空
- php - mysql php的左连接查询
- java - 如何克服此错误“com.mongodb.diagnostics.logging.JULLogger log”
- c# - 在 C# 中查找 Json 数组中的特定项目
- .net-core - Web API 将 JSON 对象转换为简单的参数
- javascript - 带括号而不是花括号的箭头函数语法?
- amazon-web-services - 如何获取 Amazon MSK 的代理端点作为输出
- javascript - TypeScript 中的 NDEFReader
- shutterstock - 编辑器集成图像横向 - 纵向