NGINX _ nginx 上的 rtmp nodejs 服务器配置:[emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use
Posted
技术标签:
【中文标题】NGINX _ nginx 上的 rtmp nodejs 服务器配置:[emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)【英文标题】:rtmp nodejs server config on NGINX _ nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use) 【发布时间】:2020-11-25 16:38:18 【问题描述】:我有 media server 在端口 1935 上运行。
我有一个子域:"streaming.foo.com"
我需要配置 nginx 才能访问 rtmp://streaming.foo.com
我用这个博客尝试了 RTMP Nginx 插件:
https://www.nginx.com/blog/video-streaming-for-remote-learning-with-nginx/
并配置/etc/nginx/nginx.conf文件。
rtmp
server
listen 1935;
application live
live on;
dash on;
dash_path /tmp/dash; // what is this config??
dash_fragment 15s;
但我从 nginx 收到此错误:
nginx[176987]: nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: 地址已在使用中)
【问题讨论】:
【参考方案1】:它是RTMP
,而不是HTTP
。 Nginx是一个web服务器,只能代理和平衡HTTP
。不是一般的代理服务器。
使用通用代理或负载均衡器,例如HA Proxy
。
【讨论】:
Nginx 有一个 RTMP 模块。【参考方案2】:你不能让两个服务监听同一个端口。
常见的解决方案是在另一个端口(比如说 19350)上配置真实服务(您的媒体服务),而不是在 nginix 上配置反向代理以将请求从暴露的端口(在本例中为 1935)转发到后端服务(在我们的示例中为 19350)。
抱歉,我不知道 nginix(我将此配置与 apache 一起使用),因此无法帮助您了解如何在其上配置反向代理。
【讨论】:
tnx 回复,我想知道我可以使用我的子域直接寻址 RTMP 服务器而不需要任何反向代理吗? 有这方面的消息吗?以上是关于NGINX _ nginx 上的 rtmp nodejs 服务器配置:[emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use的主要内容,如果未能解决你的问题,请参考以下文章