diff --git a/src/http/ngx_http.h b/src/http/ngx_http.h
index cac2a9c..3cc869a 100644
--- a/src/http/ngx_http.h
+++ b/src/http/ngx_http.h
@@ -78,6 +78,8 @@
     ngx_str_t *name, ngx_str_t *value);
 ngx_int_t ngx_http_arg(ngx_http_request_t *r, u_char *name, size_t len,
     ngx_str_t *value);
+void ngx_http_split_args(ngx_http_request_t *r, ngx_str_t *uri,
+    ngx_str_t *args);
 
 
 ngx_int_t ngx_http_find_server_conf(ngx_http_request_t *r);
diff --git a/src/http/ngx_http_parse.c b/src/http/ngx_http_parse.c
index f31df7b..318a33b 100644
--- a/src/http/ngx_http_parse.c
+++ b/src/http/ngx_http_parse.c
@@ -1523,3 +1523,37 @@
 
     return NGX_DECLINED;
 }
+
+
+void
+ngx_http_split_args(ngx_http_request_t *r, ngx_str_t *uri, ngx_str_t *args)
+{
+    u_char  ch, *p, *last;
+
+    p = uri->data;
+
+    last = p + uri->len;
+
+    while (p < last) {
+
+	ch = *p++;
+
+	if (ch == '?') {
+	    args->len = last - p;
+	    args->data = p;
+
+	    uri->len = p - 1 - uri->data;
+
+	    if (ngx_strlchr(p, last, '\0') != NULL) {
+		r->zero_in_uri = 1;
+	    }
+
+	    return;
+	}
+
+	if (ch == '\0') {
+	    r->zero_in_uri = 1;
+	    continue;
+	}
+    }
+}
