Fw:Re: [PATCH] Core: use uppercase hexadecimal digits forpercent-encoding

 godzeye  315567599 at qq.com
Tue Jul 1 05:30:55 UTC 2014


I think lowercase hexadecimal is good for chinese.‍




------------------ Original ------------------
From:  "Ruslan Ermilov";<ru at nginx.com>;
Date:  Tue, Jul 1, 2014 01:26 PM
To:  "Maxim Dounin"<mdounin at mdounin.ru>; 
Cc:  "nginx-devel"<nginx-devel at nginx.org>; 
Subject:  Re: [PATCH] Core: use uppercase hexadecimal digits forpercent-encoding



On Tue, Jul 01, 2014 at 05:15:06AM +0400, Maxim Dounin wrote:
> On Mon, Jun 30, 2014 at 04:41:26PM +0400, Valentin V. Bartenev wrote:
> > On Friday 27 June 2014 21:57:54 Maxim Dounin wrote:
> > > Hello!
> > > 
> > > On Thu, Jun 26, 2014 at 11:40:27PM -0700, Piotr Sikora wrote:
> > > 
> > > > # HG changeset patch
> > > > # User Piotr Sikora <piotr at cloudflare.com>
> > > > # Date 1403851163 25200
> > > > #      Thu Jun 26 23:39:23 2014 -0700
> > > > # Node ID 177382006b7d7a421688831d5793b2e417074b48
> > > > # Parent  42114bf12da0cf3d428d0e695139f5366cbd0513
> > > > Core: use uppercase hexadecimal digits for percent-encoding.
> > > > 
> > > > RFC3986 says that, for consistency, URI producers and normalizers
> > > > should use uppercase hexadecimal digits for all percent-encodings.
> > > > 
> > > > This is also what modern web browsers and other tools use.
> > > > 
> > > > Using lowercase hexadecimal digits makes it harder to interact with
> > > > those tools in case when use of the percent-encoded URI is required,
> > > > for example when $request_uri is part of the cache key.
> > > > 
> > > > Signed-off-by: Piotr Sikora <piotr at cloudflare.com>
> > > > 
> > > > diff -r 42114bf12da0 -r 177382006b7d src/core/ngx_string.c
> > > > --- a/src/core/ngx_string.c	Mon Jun 16 19:43:25 2014 +0400
> > > > +++ b/src/core/ngx_string.c	Thu Jun 26 23:39:23 2014 -0700
> > > > @@ -1407,7 +1407,7 @@ ngx_escape_uri(u_char *dst, u_char *src,
> > > >  {
> > > >      ngx_uint_t      n;
> > > >      uint32_t       *escape;
> > > > -    static u_char   hex[] = "0123456789abcdef";
> > > > +    static u_char   hex[] = "0123456789ABCDEF";
> > > >  
> > > >                      /* " ", "#", "%", "?", %00-%1F, %7F-%FF */
> > > 
> > > I can't say I like this change.  I've considered this a while ago, 
> > > and decided to keep it as is.  This preserve compatibility with 
> > > what nginx used to do for years.  And it also looks like Apache 
> > > does the same.
> > > 
> > > Any other opinions?
> > > 
> > 
> > I prefer to fix this instead of keeping it for another few years. 
> > 
> > Uppercase digits also look more distinctly, since all other parts
> > of path are usually in lowercase.
> 
> Ruslan?  Igor?

I don't really care, but just to be in line with RFC recommendations
and our own comments (see above, it's in the patch context), I think
we can switch to using upper case.

_______________________________________________
nginx-devel mailing list
nginx-devel at nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-devel
.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.nginx.org/pipermail/nginx-devel/attachments/20140701/9c35c951/attachment-0001.html>


More information about the nginx-devel mailing list