NGINX proxy_pass 基于自定义 header
NGINX proxy_pass based on custom header
我正在 Nginx 上设置反向代理,客户端请求有一个 header X-OUTBOUND-URI
,然后它将在特定端口上命中我的反向代理。
我正在尝试对变量 $http_x_outbound_uri
执行 proxy_pass,但出现解析器错误。
server {
listen 8082;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass $http_x_outbound_uri;
}
}
这是使用的 curl 命令:curl localhost:8082 -H "X-OUTBOUND-URI: http://localhost:9001"
,我在端口 9001 上有一个网络服务器 运行。
我做错了吗?另外,对于这个用例,做重定向是否更合适。谢谢。
对于遇到相同问题的人,我通过将本地主机更改为 127.0.0.1 设法解决了这个问题,否则,我们必须设置一个解析器。我在另一个 post.
中找到了解释
我正在 Nginx 上设置反向代理,客户端请求有一个 header X-OUTBOUND-URI
,然后它将在特定端口上命中我的反向代理。
我正在尝试对变量 $http_x_outbound_uri
执行 proxy_pass,但出现解析器错误。
server {
listen 8082;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
location / {
proxy_pass $http_x_outbound_uri;
}
}
这是使用的 curl 命令:curl localhost:8082 -H "X-OUTBOUND-URI: http://localhost:9001"
,我在端口 9001 上有一个网络服务器 运行。
我做错了吗?另外,对于这个用例,做重定向是否更合适。谢谢。
对于遇到相同问题的人,我通过将本地主机更改为 127.0.0.1 设法解决了这个问题,否则,我们必须设置一个解析器。我在另一个 post.
中找到了解释