Mercurial > hg > nginx
comparison src/http/ngx_http_request.c @ 1585:4435ca2e467d
merge_slashes
author | Igor Sysoev <igor@sysoev.ru> |
---|---|
date | Thu, 18 Oct 2007 11:36:58 +0000 |
parents | 099d8470e6c3 |
children | 9706372f8916 |
comparison
equal
deleted
inserted
replaced
1584:25427a0e9559 | 1585:4435ca2e467d |
---|---|
600 | 600 |
601 | 601 |
602 static void | 602 static void |
603 ngx_http_process_request_line(ngx_event_t *rev) | 603 ngx_http_process_request_line(ngx_event_t *rev) |
604 { | 604 { |
605 ssize_t n; | 605 ssize_t n; |
606 ngx_int_t rc, rv; | 606 ngx_int_t rc, rv; |
607 ngx_connection_t *c; | 607 ngx_connection_t *c; |
608 ngx_http_request_t *r; | 608 ngx_http_request_t *r; |
609 ngx_http_core_srv_conf_t *cscf; | |
609 | 610 |
610 c = rev->data; | 611 c = rev->data; |
611 r = c->data; | 612 r = c->data; |
612 | 613 |
613 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, rev->log, 0, | 614 ngx_log_debug0(NGX_LOG_DEBUG_HTTP, rev->log, 0, |
655 if (r->uri.data == NULL) { | 656 if (r->uri.data == NULL) { |
656 ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); | 657 ngx_http_close_request(r, NGX_HTTP_INTERNAL_SERVER_ERROR); |
657 return; | 658 return; |
658 } | 659 } |
659 | 660 |
660 rc = ngx_http_parse_complex_uri(r); | 661 cscf = ngx_http_get_module_srv_conf(r, ngx_http_core_module); |
662 | |
663 rc = ngx_http_parse_complex_uri(r, cscf->merge_slashes); | |
661 | 664 |
662 if (rc == NGX_HTTP_PARSE_INVALID_REQUEST) { | 665 if (rc == NGX_HTTP_PARSE_INVALID_REQUEST) { |
663 ngx_log_error(NGX_LOG_INFO, c->log, 0, | 666 ngx_log_error(NGX_LOG_INFO, c->log, 0, |
664 "client sent invalid request"); | 667 "client sent invalid request"); |
665 ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); | 668 ngx_http_finalize_request(r, NGX_HTTP_BAD_REQUEST); |