|
11 | 11 | const fs = require('fs'); |
12 | 12 | const fsp = fs.promises; |
13 | 13 | const http = require('http'); |
14 | | -const url = require('url'); |
15 | 14 | const zlib = require('zlib'); |
16 | 15 |
|
17 | 16 | // constants |
@@ -989,9 +988,9 @@ const request_handle = async (request, response, https) => { |
989 | 988 |
|
990 | 989 | try { |
991 | 990 | response.setHeader('Server', 'l3p3 rtjscomp v' + VERSION); |
992 | | - const request_url_parsed = url.parse(request.url, false); |
| 991 | + const request_url_parsed = request.url.split('?'); |
993 | 992 |
|
994 | | - let path = request_url_parsed.pathname || '/'; |
| 993 | + let path = request_url_parsed[0] || '/'; |
995 | 994 | if ( |
996 | 995 | path.charCodeAt(0) !== 47 || |
997 | 996 | path.includes('//') |
@@ -1086,7 +1085,8 @@ const request_handle = async (request, response, https) => { |
1086 | 1085 |
|
1087 | 1086 | const file_dyn_enabled = ( |
1088 | 1087 | type_dynamics.has(file_type) && |
1089 | | - !path_statics.has(path) |
| 1088 | + !path_statics.has(path) && |
| 1089 | + !path_statics.has(path.split('/', 1)[0]) |
1090 | 1090 | ); |
1091 | 1091 |
|
1092 | 1092 | if ( |
@@ -1314,9 +1314,12 @@ const request_handle = async (request, response, https) => { |
1314 | 1314 | } |
1315 | 1315 | } |
1316 | 1316 |
|
1317 | | - if (request_url_parsed.query) { |
| 1317 | + if (request_url_parsed.length > 1) { |
1318 | 1318 | try { |
1319 | | - querystring_parse(request_url_parsed.query, file_function_input); |
| 1319 | + querystring_parse( |
| 1320 | + request_url_parsed.slice(1).join('?'), |
| 1321 | + file_function_input |
| 1322 | + ); |
1320 | 1323 | } |
1321 | 1324 | catch (err) { |
1322 | 1325 | log(`[error] ${path} request query: ${err}`); |
@@ -1365,7 +1368,7 @@ const request_handle = async (request, response, https) => { |
1365 | 1368 | ? 'get' |
1366 | 1369 | : request_method.toLowerCase() |
1367 | 1370 | ); |
1368 | | - file_function_input['path'] = request_url_parsed.pathname; |
| 1371 | + file_function_input['path'] = request_url_parsed[0]; |
1369 | 1372 | file_function_input['user_agent'] = request_headers['user-agent']; |
1370 | 1373 |
|
1371 | 1374 | let file_function_output = response; |
|
0 commit comments