Re: [patch] Http image_filter: return 405 when method is HEAD and body is empty.

2017-06-19 Thread Maxim Dounin
Hello!

On Tue, Jun 20, 2017 at 12:56:15AM +0800, 胡聪 (hucc) wrote:

> Returning 415 does not conform to the HTTP protocol when image and proxy_pass
> configured in same location.
> 
> # HG changeset patch
> # User hucongcong 
> # Date 1497890354 -28800
> #  Tue Jun 20 00:39:14 2017 +0800
> # Node ID af3a94de6a6549dec5e1205514eda1893313a14c
> # Parent  d1816a2696de8c2faa1cd913a151e5f62a8620f3
> Http image_filter: return 405 when method is HEAD and body is empty.
> 
> diff -r d1816a2696de -r af3a94de6a65 
> src/http/modules/ngx_http_image_filter_module.c
> --- a/src/http/modules/ngx_http_image_filter_module.c   Fri Jun 16 18:15:58 
> 2017 +0300
> +++ b/src/http/modules/ngx_http_image_filter_module.c   Tue Jun 20 00:39:14 
> 2017 +0800
> @@ -330,6 +330,12 @@ ngx_http_image_body_filter(ngx_http_requ
>  }
>  }
> 
> +if (r->method & NGX_HTTP_HEAD) {
> +return ngx_http_filter_finalize_request(r,
> +  
> _http_image_filter_module,
> +  NGX_HTTP_NOT_ALLOWED);
> +}
> +
>  return ngx_http_filter_finalize_request(r,
>_http_image_filter_module,
>
> NGX_HTTP_UNSUPPORTED_MEDIA_TYPE);

Please clarify why you think that the current code is wrong.  I 
don't see any problems with returning 415 to HEAD requests as long 
we are going to return 415 to GETs.

-- 
Maxim Dounin
http://nginx.org/
___
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel

[patch] Http image_filter: return 405 when method is HEAD and body is empty.

2017-06-19 Thread 胡聪 (hucc)
Hi,

Returning 415 does not conform to the HTTP protocol when image and proxy_pass
configured in same location.

# HG changeset patch
# User hucongcong 
# Date 1497890354 -28800
#  Tue Jun 20 00:39:14 2017 +0800
# Node ID af3a94de6a6549dec5e1205514eda1893313a14c
# Parent  d1816a2696de8c2faa1cd913a151e5f62a8620f3
Http image_filter: return 405 when method is HEAD and body is empty.

diff -r d1816a2696de -r af3a94de6a65 
src/http/modules/ngx_http_image_filter_module.c
--- a/src/http/modules/ngx_http_image_filter_module.c   Fri Jun 16 18:15:58 
2017 +0300
+++ b/src/http/modules/ngx_http_image_filter_module.c   Tue Jun 20 00:39:14 
2017 +0800
@@ -330,6 +330,12 @@ ngx_http_image_body_filter(ngx_http_requ
 }
 }

+if (r->method & NGX_HTTP_HEAD) {
+return ngx_http_filter_finalize_request(r,
+  
_http_image_filter_module,
+  NGX_HTTP_NOT_ALLOWED);
+}
+
 return ngx_http_filter_finalize_request(r,
   _http_image_filter_module,
   NGX_HTTP_UNSUPPORTED_MEDIA_TYPE);
___
nginx-devel mailing list
nginx-devel@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel