我有一个带有通配符子域的网站:运行nginx的* .mydomain。 我想将proxy_pass发送到另一台服务器上的另一个端口,具体取决于子域。
例如:
abc.mydomain - > proxy_pass http://otherdomain:10001
foo.mydomain - > proxy_pass http://otherdomain:10002
等
要重定向到的端口位于数据库中,我可以通过调用url来查找它:
curl http://mydomain/getport/abc - > 10001个
卷曲http://mydomain/getport/foo - > 10002
我的网站上有数百个子域名。如何在每次访问时进行这样的动态端口查找,以便在nginx中使用proxy_pass?
我对单个子域的当前nginx配置是:
server {
listen 80;
server_name abc.mydomain;
location / {
proxy_pass http://otherdomain:10001;
}
}
由于
答案 0 :(得分:0)
发现这可能有助于解决问题。使用 OpenResty,将 URI 保存到 Redis,并查找每个请求 URI 模式。
https://openresty.org/en/dynamic-routing-based-on-redis.html