diff --git a/src/http/ngx_http_parse.c b/src/http/ngx_http_parse.c
index 17706bb..dd97433 100644
--- a/src/http/ngx_http_parse.c
+++ b/src/http/ngx_http_parse.c
@@ -642,6 +642,7 @@
     state = sw_usual;
     p = r->uri_start;
     u = r->uri.data;
+    r->uri_ext = NULL;
 
     ch = *p++;
 
@@ -654,6 +655,7 @@
         case sw_usual:
             switch(ch) {
             case '/':
+                r->uri_ext = NULL;
                 state = sw_slash;
                 *u++ = ch;
                 break;
@@ -661,6 +663,8 @@
                 quoted_state = state;
                 state = sw_quoted;
                 break;
+            case '.':
+                r->uri_ext = u + 1;
             default:
                 *u++ = ch;
                 break;
@@ -811,5 +815,17 @@
     r->uri.len = u - r->uri.data;
     r->uri.data[r->uri.len] = '\0';
 
+    if (r->uri_ext) {
+        r->exten.len = u - r->uri_ext;
+
+        if (!(r->exten.data = ngx_palloc(r->pool, r->exten.len + 1))) {
+            return NGX_HTTP_INTERNAL_SERVER_ERROR;
+        }
+
+        ngx_cpystrn(r->exten.data, r->uri_ext, r->exten.len + 1);
+    }
+
+    r->uri_ext = NULL;
+
     return NGX_OK;
 }
