Add patch to remove root and alias directives (#8624)
This commit is contained in:
parent
6ea466bd21
commit
cd6f88af3f
1 changed files with 144 additions and 0 deletions
144
images/nginx/rootfs/patches/drop-alias-root.patch
Normal file
144
images/nginx/rootfs/patches/drop-alias-root.patch
Normal file
|
@ -0,0 +1,144 @@
|
|||
:100644 100644 c7463dcd 00000000 M src/http/ngx_http_core_module.c
|
||||
diff --git a/src/http/ngx_http_core_module.c b/src/http/ngx_http_core_module.c
|
||||
index c7463dcd..e2e45931 100644
|
||||
--- a/src/http/ngx_http_core_module.c
|
||||
+++ b/src/http/ngx_http_core_module.c
|
||||
@@ -55,7 +55,6 @@ static char *ngx_http_core_listen(ngx_conf_t *cf, ngx_command_t *cmd,
|
||||
void *conf);
|
||||
static char *ngx_http_core_server_name(ngx_conf_t *cf, ngx_command_t *cmd,
|
||||
void *conf);
|
||||
-static char *ngx_http_core_root(ngx_conf_t *cf, ngx_command_t *cmd, void *conf);
|
||||
static char *ngx_http_core_limit_except(ngx_conf_t *cf, ngx_command_t *cmd,
|
||||
void *conf);
|
||||
static char *ngx_http_core_set_aio(ngx_conf_t *cf, ngx_command_t *cmd,
|
||||
@@ -323,21 +322,6 @@ static ngx_command_t ngx_http_core_commands[] = {
|
||||
offsetof(ngx_http_core_loc_conf_t, default_type),
|
||||
NULL },
|
||||
|
||||
- { ngx_string("root"),
|
||||
- NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_HTTP_LIF_CONF
|
||||
- |NGX_CONF_TAKE1,
|
||||
- ngx_http_core_root,
|
||||
- NGX_HTTP_LOC_CONF_OFFSET,
|
||||
- 0,
|
||||
- NULL },
|
||||
-
|
||||
- { ngx_string("alias"),
|
||||
- NGX_HTTP_LOC_CONF|NGX_CONF_TAKE1,
|
||||
- ngx_http_core_root,
|
||||
- NGX_HTTP_LOC_CONF_OFFSET,
|
||||
- 0,
|
||||
- NULL },
|
||||
-
|
||||
{ ngx_string("limit_except"),
|
||||
NGX_HTTP_LOC_CONF|NGX_CONF_BLOCK|NGX_CONF_1MORE,
|
||||
ngx_http_core_limit_except,
|
||||
@@ -4312,108 +4296,6 @@ ngx_http_core_server_name(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
||||
}
|
||||
|
||||
|
||||
-static char *
|
||||
-ngx_http_core_root(ngx_conf_t *cf, ngx_command_t *cmd, void *conf)
|
||||
-{
|
||||
- ngx_http_core_loc_conf_t *clcf = conf;
|
||||
-
|
||||
- ngx_str_t *value;
|
||||
- ngx_int_t alias;
|
||||
- ngx_uint_t n;
|
||||
- ngx_http_script_compile_t sc;
|
||||
-
|
||||
- alias = (cmd->name.len == sizeof("alias") - 1) ? 1 : 0;
|
||||
-
|
||||
- if (clcf->root.data) {
|
||||
-
|
||||
- if ((clcf->alias != 0) == alias) {
|
||||
- return "is duplicate";
|
||||
- }
|
||||
-
|
||||
- ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
|
||||
- "\"%V\" directive is duplicate, "
|
||||
- "\"%s\" directive was specified earlier",
|
||||
- &cmd->name, clcf->alias ? "alias" : "root");
|
||||
-
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
-
|
||||
- if (clcf->named && alias) {
|
||||
- ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
|
||||
- "the \"alias\" directive cannot be used "
|
||||
- "inside the named location");
|
||||
-
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
-
|
||||
- value = cf->args->elts;
|
||||
-
|
||||
- if (ngx_strstr(value[1].data, "$document_root")
|
||||
- || ngx_strstr(value[1].data, "${document_root}"))
|
||||
- {
|
||||
- ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
|
||||
- "the $document_root variable cannot be used "
|
||||
- "in the \"%V\" directive",
|
||||
- &cmd->name);
|
||||
-
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
-
|
||||
- if (ngx_strstr(value[1].data, "$realpath_root")
|
||||
- || ngx_strstr(value[1].data, "${realpath_root}"))
|
||||
- {
|
||||
- ngx_conf_log_error(NGX_LOG_EMERG, cf, 0,
|
||||
- "the $realpath_root variable cannot be used "
|
||||
- "in the \"%V\" directive",
|
||||
- &cmd->name);
|
||||
-
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
-
|
||||
- clcf->alias = alias ? clcf->name.len : 0;
|
||||
- clcf->root = value[1];
|
||||
-
|
||||
- if (!alias && clcf->root.len > 0
|
||||
- && clcf->root.data[clcf->root.len - 1] == '/')
|
||||
- {
|
||||
- clcf->root.len--;
|
||||
- }
|
||||
-
|
||||
- if (clcf->root.data[0] != '$') {
|
||||
- if (ngx_conf_full_name(cf->cycle, &clcf->root, 0) != NGX_OK) {
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- n = ngx_http_script_variables_count(&clcf->root);
|
||||
-
|
||||
- ngx_memzero(&sc, sizeof(ngx_http_script_compile_t));
|
||||
- sc.variables = n;
|
||||
-
|
||||
-#if (NGX_PCRE)
|
||||
- if (alias && clcf->regex) {
|
||||
- clcf->alias = NGX_MAX_SIZE_T_VALUE;
|
||||
- n = 1;
|
||||
- }
|
||||
-#endif
|
||||
-
|
||||
- if (n) {
|
||||
- sc.cf = cf;
|
||||
- sc.source = &clcf->root;
|
||||
- sc.lengths = &clcf->root_lengths;
|
||||
- sc.values = &clcf->root_values;
|
||||
- sc.complete_lengths = 1;
|
||||
- sc.complete_values = 1;
|
||||
-
|
||||
- if (ngx_http_script_compile(&sc) != NGX_OK) {
|
||||
- return NGX_CONF_ERROR;
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- return NGX_CONF_OK;
|
||||
-}
|
||||
-
|
||||
-
|
||||
static ngx_http_method_name_t ngx_methods_names[] = {
|
||||
{ (u_char *) "GET", (uint32_t) ~NGX_HTTP_GET },
|
||||
{ (u_char *) "HEAD", (uint32_t) ~NGX_HTTP_HEAD },
|
Loading…
Reference in a new issue