打开“ngx_http_concat_module.c”文件,找到 “ngx_http_concat_handler”里遍历解析args的for循环,替换成如下代码。
for (p = r->args.data + 1, v = p; p != e; p++) {
/* 修复在被劫持后添加参数导致400错误使其加载失败的问题 */
/* 如果碰到 & 或 # 时,则直接跳出循环 */
if(*p == '&' || *p == '#'){
break;
}else if (*p == ',') {
rc = ngx_http_concat_add_path(r, &uris, clcf->max_files, &path,
p, v);
if (rc != NGX_OK) {
return rc;
} v = p + 1;
} else if (*p == '?') {
rc = ngx_http_concat_add_path(r, &uris, clcf->max_files, &path,
p, v);
if (rc != NGX_OK) {
return rc;
} v = p;
break;
}
}