5

我试图弄清楚是否有一种简单的方法可以将到达 Nginx 的跟踪像素请求转换为 POST,该 POST 将通过一些附加的主体进入上游。

例如,如果我收到 GET 请求http://domain.com/track/mail-id.gif,我想配置 Nginx 以将其转换为http://upstream/mail-id带有某些正文的 POST(比如说 status:opened)。

怎么做到呢?

4

2 回答 2

8

只是想添加一个更详细的示例:

location /track/mail-id.gif {
    proxy_pass http://upstream/mail-id;
    proxy_method POST;
    proxy_set_body "status:opened";
    # if needed
    # proxy_set_header Some-Header value;
}

在这里提供了一个 url proxy_pass,以确保请求的确切行为。

于 2017-11-10T14:09:16.900 回答
0

您应该能够使用 Nginx 代理功能来实现这一点,特别是使用proxy_method指令。

就像是:

location /track/mail-id.gif {
    proxy_pass http://upstream
    proxy_method POST
}

有关 Nginx 代理指令的更多信息,请参阅http://nginx.org/en/docs/http/ngx_http_proxy_module.html

于 2017-02-28T11:18:26.947 回答