nginx动态重定向url
Posted
技术标签:
【中文标题】nginx动态重定向url【英文标题】:nginx dynamic redirection of url 【发布时间】:2018-05-29 13:56:04 【问题描述】:我在服务器端动态打开和关闭 websocket,端口范围从 5700 到 5800。 Web 客户端可以访问运行 Web 服务器 (nginx) 的端口 80。 我需要我的客户通过端口 80 访问这些 websocket,我正在考虑为每个可访问的 websocket 生成一个 url(例如 www.my-site/websocket/5701)并通过 nginx 代理它(到端口 5701 上的 websocket)。
有没有一种方法可以动态告诉 nginx 将流量从生成的 url 重定向到 websocket?
如果从客户端到 web 服务器端口 80 的流量被加密,但从 nginx 到 websocket 的流量不加密,我的解决方案会起作用吗?
编辑: 我有一个可行的解决方案,但我想让它更通用(从一个块中的端口 5700 到 5750)
location /websocket/5700
proxy_pass http://127.0.0.1:5700;
【问题讨论】:
动态是什么意思!你能不能再深入一点。 我的意思是websockets可以随时打开或关闭。在写我的问题时,我意识到这个事实并不重要,代理可以保持打开状态 【参考方案1】:我通过使用找到了答案:
location ~ /websocket/(.*)$
proxy_pass http://127.0.0.1:$1;
【讨论】:
以上是关于nginx动态重定向url的主要内容,如果未能解决你的问题,请参考以下文章