Changeset 3534:3711bb1336c3 in nginx


Ignore:
Timestamp:
05/27/10 13:44:22 (10 years ago)
Author:
Igor Sysoev <igor@…>
Branch:
default
Phase:
public
Convert:
svn:c3fe7df1-7212-e011-8a91-001109144009/trunk@3535
Message:

fix a try_files/alias case when alias uses captures and

try_files .html "" / =404;

Location:
src/http
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • src/http/ngx_http_core_module.c

    r3533 r3534  
    12871287            if (!test_dir) {
    12881288                r->uri = path;
     1289                r->add_uri_to_alias = 1;
    12891290            }
    12901291#endif
     
    17841785
    17851786        captures = alias && clcf->regex;
    1786         reserved += captures ? 1 : r->uri.len - alias + 1;
     1787
     1788        reserved += captures ? r->add_uri_to_alias ? r->uri.len + 1 : 1
     1789                             : r->uri.len - alias + 1;
    17871790#else
    17881791        reserved += r->uri.len - alias + 1;
     
    18051808#if (NGX_PCRE)
    18061809        if (captures) {
    1807             *last = '\0';
    1808             return last;
     1810            if (!r->add_uri_to_alias) {
     1811                *last = '\0';
     1812                return last;
     1813            }
     1814
     1815            alias = 0;
    18091816        }
    18101817#endif
     
    22142221
    22152222    r->internal = 1;
     2223    r->add_uri_to_alias = 0;
    22162224    r->main->count++;
    22172225
  • src/http/ngx_http_request.h

    r3527 r3534  
    438438    unsigned                          invalid_header:1;
    439439
     440    unsigned                          add_uri_to_alias:1;
    440441    unsigned                          valid_location:1;
    441442    unsigned                          valid_unparsed_uri:1;
Note: See TracChangeset for help on using the changeset viewer.