mirror of
https://github.com/nginx/nginx.git
synced 2024-11-29 20:24:21 -06:00
omit "#fragment"
This commit is contained in:
parent
4346bab52e
commit
b80a7f4318
@ -282,6 +282,10 @@ ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b)
|
|||||||
r->args_start = p + 1;
|
r->args_start = p + 1;
|
||||||
state = sw_uri;
|
state = sw_uri;
|
||||||
break;
|
break;
|
||||||
|
case '#':
|
||||||
|
r->complex_uri = 1;
|
||||||
|
state = sw_uri;
|
||||||
|
break;
|
||||||
case '+':
|
case '+':
|
||||||
r->plus_in_uri = 1;
|
r->plus_in_uri = 1;
|
||||||
break;
|
break;
|
||||||
@ -341,6 +345,10 @@ ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b)
|
|||||||
r->args_start = p + 1;
|
r->args_start = p + 1;
|
||||||
state = sw_uri;
|
state = sw_uri;
|
||||||
break;
|
break;
|
||||||
|
case '#':
|
||||||
|
r->complex_uri = 1;
|
||||||
|
state = sw_uri;
|
||||||
|
break;
|
||||||
case '+':
|
case '+':
|
||||||
r->plus_in_uri = 1;
|
r->plus_in_uri = 1;
|
||||||
break;
|
break;
|
||||||
@ -366,6 +374,9 @@ ngx_http_parse_request_line(ngx_http_request_t *r, ngx_buf_t *b)
|
|||||||
r->uri_end = p;
|
r->uri_end = p;
|
||||||
r->http_minor = 9;
|
r->http_minor = 9;
|
||||||
goto done;
|
goto done;
|
||||||
|
case '#':
|
||||||
|
r->complex_uri = 1;
|
||||||
|
break;
|
||||||
case '\0':
|
case '\0':
|
||||||
r->zero_in_uri = 1;
|
r->zero_in_uri = 1;
|
||||||
break;
|
break;
|
||||||
@ -822,6 +833,8 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
r->args_start = p;
|
r->args_start = p;
|
||||||
|
goto args;
|
||||||
|
case '#':
|
||||||
goto done;
|
goto done;
|
||||||
case '.':
|
case '.':
|
||||||
r->uri_ext = u + 1;
|
r->uri_ext = u + 1;
|
||||||
@ -853,6 +866,8 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
r->args_start = p;
|
r->args_start = p;
|
||||||
|
goto args;
|
||||||
|
case '#':
|
||||||
goto done;
|
goto done;
|
||||||
case '+':
|
case '+':
|
||||||
r->plus_in_uri = 1;
|
r->plus_in_uri = 1;
|
||||||
@ -883,6 +898,8 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
r->args_start = p;
|
r->args_start = p;
|
||||||
|
goto args;
|
||||||
|
case '#':
|
||||||
goto done;
|
goto done;
|
||||||
case '+':
|
case '+':
|
||||||
r->plus_in_uri = 1;
|
r->plus_in_uri = 1;
|
||||||
@ -915,6 +932,8 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
r->args_start = p;
|
r->args_start = p;
|
||||||
|
goto args;
|
||||||
|
case '#':
|
||||||
goto done;
|
goto done;
|
||||||
#if (NGX_WIN32)
|
#if (NGX_WIN32)
|
||||||
case '.':
|
case '.':
|
||||||
@ -958,6 +977,8 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
case '?':
|
case '?':
|
||||||
r->args_start = p;
|
r->args_start = p;
|
||||||
|
goto args;
|
||||||
|
case '#':
|
||||||
goto done;
|
goto done;
|
||||||
case '+':
|
case '+':
|
||||||
r->plus_in_uri = 1;
|
r->plus_in_uri = 1;
|
||||||
@ -1001,7 +1022,11 @@ ngx_http_parse_complex_uri(ngx_http_request_t *r)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (ch == '\0') {
|
if (ch == '#') {
|
||||||
|
*u++ = ch;
|
||||||
|
ch = *p++;
|
||||||
|
|
||||||
|
} else if (ch == '\0') {
|
||||||
r->zero_in_uri = 1;
|
r->zero_in_uri = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1040,6 +1065,31 @@ done:
|
|||||||
|
|
||||||
r->uri_ext = NULL;
|
r->uri_ext = NULL;
|
||||||
|
|
||||||
|
return NGX_OK;
|
||||||
|
|
||||||
|
args:
|
||||||
|
|
||||||
|
while (p < r->uri_end) {
|
||||||
|
if (*p++ != '#') {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
r->args.len = p - 1 - r->args_start;
|
||||||
|
r->args.data = r->args_start;
|
||||||
|
r->args_start = NULL;
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
r->uri.len = u - r->uri.data;
|
||||||
|
|
||||||
|
if (r->uri_ext) {
|
||||||
|
r->exten.len = u - r->uri_ext;
|
||||||
|
r->exten.data = r->uri_ext;
|
||||||
|
}
|
||||||
|
|
||||||
|
r->uri_ext = NULL;
|
||||||
|
|
||||||
return NGX_OK;
|
return NGX_OK;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user