Mercurial > hg > nginx-vendor-current
comparison src/http/ngx_http_request.c @ 576:01f2313e34f1 NGINX_0_8_40
nginx 0.8.40
*) Security: now nginx/Windows ignores default file stream name.
Thanks to Jose Antonio Vazquez Gonzalez.
*) Feature: the ngx_http_uwsgi_module.
Thanks to Roberto De Ioris.
*) Feature: a "fastcgi_param" directive with value starting with
"HTTP_" overrides a client request header line.
*) Bugfix: the "If-Modified-Since", "If-Range", etc. client request
header lines were passed to FastCGI-server while caching.
*) Bugfix: listen unix domain socket could not be changed during
reconfiguration.
Thanks to Maxim Dounin.
author | Igor Sysoev <http://sysoev.ru> |
---|---|
date | Mon, 07 Jun 2010 00:00:00 +0400 |
parents | 7fa8dc2315bd |
children | bc110f60c0de |
comparison
equal
deleted
inserted
replaced
575:6ad548c0b830 | 576:01f2313e34f1 |
---|---|
786 { | 786 { |
787 u_char *p; | 787 u_char *p; |
788 | 788 |
789 p = r->uri.data + r->uri.len - 1; | 789 p = r->uri.data + r->uri.len - 1; |
790 | 790 |
791 if (*p == '.' || *p == ' ') { | 791 while (p > r->uri.data) { |
792 | 792 |
793 while (--p > r->uri.data && (*p == '.' || *p == ' ')) { | 793 if (*p == ' ') { |
794 /* void */ | 794 p--; |
795 continue; | |
795 } | 796 } |
796 | 797 |
798 if (*p == '.') { | |
799 p--; | |
800 continue; | |
801 } | |
802 | |
803 if (ngx_strncasecmp(p - 6, (u_char *) "::$data", 7) == 0) { | |
804 p -= 7; | |
805 continue; | |
806 } | |
807 | |
808 break; | |
809 } | |
810 | |
811 if (p != r->uri.data + r->uri.len - 1) { | |
797 r->uri.len = p + 1 - r->uri.data; | 812 r->uri.len = p + 1 - r->uri.data; |
798 | |
799 ngx_http_set_exten(r); | 813 ngx_http_set_exten(r); |
800 } | 814 } |
815 | |
801 } | 816 } |
802 #endif | 817 #endif |
803 | 818 |
804 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, c->log, 0, | 819 ngx_log_debug1(NGX_LOG_DEBUG_HTTP, c->log, 0, |
805 "http request line: \"%V\"", &r->request_line); | 820 "http request line: \"%V\"", &r->request_line); |