Mercurial > hg > nginx-quic
view src/core/ngx_sha1.h @ 6341:2797b4347a2a stable-1.8
Fixed wrong URI after try_files in nested location (ticket #97).
The following configuration with alias, nested location and try_files
resulted in wrong file being used. Request "/foo/test.gif" tried to
use "/tmp//foo/test.gif" instead of "/tmp/test.gif":
location /foo/ {
alias /tmp/;
location ~ gif {
try_files $uri =405;
}
}
Additionally, rev. c985d90a8d1f introduced a regression if
the "/tmp//foo/test.gif" file was found (ticket #768). Resulting URI
was set to "gif?/foo/test.gif", as the code used clcf->name of current
location ("location ~ gif") instead of parent one ("location /foo/").
Fix is to use r->uri instead of clcf->name in all cases in the
ngx_http_core_try_files_phase() function. It is expected to be
already matched and identical to the clcf->name of the right
location.
author | Maxim Dounin <mdounin@mdounin.ru> |
---|---|
date | Sun, 16 Aug 2015 10:51:34 +0300 |
parents | d620f497c50f |
children | 1064ea81ed3a |
line wrap: on
line source
/* * Copyright (C) Igor Sysoev * Copyright (C) Nginx, Inc. */ #ifndef _NGX_SHA1_H_INCLUDED_ #define _NGX_SHA1_H_INCLUDED_ #include <ngx_config.h> #include <ngx_core.h> #if (NGX_HAVE_OPENSSL_SHA1_H) #include <openssl/sha.h> #else #include <sha.h> #endif typedef SHA_CTX ngx_sha1_t; #define ngx_sha1_init SHA1_Init #define ngx_sha1_update SHA1_Update #define ngx_sha1_final SHA1_Final #endif /* _NGX_SHA1_H_INCLUDED_ */