【问题标题】:rtmp nodejs server config on NGINX _ nginx: [emerg] bind() to 0.0.0.0:1935 failed (98: Address already in use)NGINX _ nginx 上的 rtmp nodejs 服务器配置:[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: 地址已在使用中)

【问题讨论】:

    标签: node.js nginx rtmp


    【解决方案1】:

    它是RTMP,而不是HTTP。 Nginx是一个web服务器,只能代理和平衡HTTP。不是一般的代理服务器。

    使用通用代理或负载均衡器,例如HA Proxy

    【讨论】:

    • Nginx 有一个 RTMP 模块。
    【解决方案2】:

    你不能让两个服务监听同一个端口。

    常见的解决方案是在另一个端口(比如说 19350)上配置真实服务(您的媒体服务),而不是在 nginix 上配置反向代理以将请求从暴露的端口(在本例中为 1935)转发到后端服务(在我们的示例中为 19350)。

    抱歉,我不知道 nginix(我将此配置与 apache 一起使用),因此无法帮助您了解如何在其上配置反向代理。

    【讨论】:

    • tnx 回复,我想知道我可以使用我的子域直接寻址 RTMP 服务器而不需要任何反向代理吗?
    • 有这方面的消息吗?
    猜你喜欢
    • 2020-01-15
    • 2013-02-05
    • 1970-01-01
    • 2014-10-13
    • 2013-08-03
    • 2013-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多