我的配置看起来像这样。
location / {
empty_gif;
}
这适用于GET。无论他给出什么位置或参数,客户端都会收到200响应和空gif。如果客户端发送了POST,则响应为405并且没有gif。
empty_gif模块似乎不接受任何有用的参数,或者至少它没有记录。任何有关良好方式的建议都会获得预期的行为(使用任何请求以200和gif进行响应)?
为了解决这个问题,我改变了我的要求。我总是返回200,但只返回带有GET的gif。尽管如此,这并不是那么简单。 empty_gif
内不允许if
。
location / {
empty_gif;
if ($request_method != GET) {
return 200;
}
}
答案 0 :(得分:3)
来自ngx_http_empty_gif_module.c的nginx来源:
if (!(r->method & (NGX_HTTP_GET|NGX_HTTP_HEAD))) {
return NGX_HTTP_NOT_ALLOWED;
}
所以它不会起作用。如果你愿意,你可以删除这条线并重新翻转以避免这种情况并得到你想要的。没有别的办法了。