我正在尝试在一个困难的网络中使用 webrtc,该网络会阻止除 80 和 443 出站和所有入站之外的所有端口。所以我需要一个运行的 coturn 服务器来监听带有 SSL 证书的 80 和 443。我想将它与 REST API 服务器、一些 websocket 服务器和托管静态文件的 NGINX 一起运行。我从这个工作的 nginx 配置开始。另一个问题中有一个关于如何在根上转发的示例。但我无法让同样的事情与路径一起工作。例如,我希望转向服务器在<url>/coturn
. 我希望 ssl 由 nginx 处理,但如果该作业被传递给 coturn 就可以了。
任何人都可以向我展示一个处理 coturn 的 nginx 配置与这样的多个其他端点吗?
编辑:这是一个非常小的配置,只是试图让代理工作与此类似:
user nginx;
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
stream{
upstream turn_secure{
server coturn:5349;
}
upstream turn{
server coturn:3478;
}
server{
listen 3478;
proxy_pass turn;
}
server{
listen 3478 udp;
proxy_pass turn;
}
server{
listen 5349;
proxy_pass turn_secure;
}
server{
listen 5349 udp;
proxy_pass turn_secure;
}
}
域引用由我运行的docker-compose给出。
但是通过涓涓细流运行它,我得到一个不可访问的错误。如果我改为运行暴露在互联网上的coturn ,那么它似乎可以按预期工作。