diff options
Diffstat (limited to 'plugin/business/tsg-http/src/http_lua.cpp')
| -rw-r--r-- | plugin/business/tsg-http/src/http_lua.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/plugin/business/tsg-http/src/http_lua.cpp b/plugin/business/tsg-http/src/http_lua.cpp index 78b93ba..1832645 100644 --- a/plugin/business/tsg-http/src/http_lua.cpp +++ b/plugin/business/tsg-http/src/http_lua.cpp @@ -657,7 +657,15 @@ static int http_lua_rewrite_header(struct elua_vm *vm) return 0; } - tfe_http_nonstd_field_write(tsg_ctx->replacing, field_name, field_value); + enum tfe_http_std_field field_id=http_field_name_to_std_field(field_name, strlen(field_name)); + if(field_id == TFE_HTTP_UNKNOWN_FIELD) + { + tfe_http_nonstd_field_write(tsg_ctx->replacing, field_name, field_value); + } + else + { + tfe_http_std_field_write(tsg_ctx->replacing, field_id, field_value); + } tsg_ctx->execut_lua_sucess=1; tsg_ctx->rewrite_header=1; |
