[PATCH] autoindex_ignore Re: [PATCH] Re: nginx-0.7.55

Борис Долгов boris at dolgov.name
Thu May 7 14:28:54 MSD 2009


Может быть лучше назвать autoindex_ignore_dotfiles? А то не совсем понятно
из названия, что игнорируем.

7 мая 2009 г. 9:42 пользователь Sergey A. Osokin <osa at macomnet.ru> написал:

> On Wed, May 06, 2009 at 05:30:50PM +0300, maxhl at hitline.net.ua wrote:
> > Спасибо патч работает. Было бы хорошо реализовать опцию как в апаче.
> >
> > -----Original Message-----
> > From: owner-nginx-ru at sysoev.ru [mailto:owner-nginx-ru at sysoev.ru] On
> Behalf
> > Of Sergey A. Osokin
> > Sent: Wednesday, May 06, 2009 4:57 PM
> > To: nginx-ru at sysoev.ru
> > Cc: maxhl at hitline.net.ua
> > Subject: [PATCH] Re: nginx-0.7.55
> >
> > On Wed, May 06, 2009 at 03:13:59PM +0300, maxhl at hitline.net.ua wrote:
> > > Подскажите а можно заставить ngx_http_autoindex_module показывать
> > > директории начинающиеся с точки ? Типа .com .net?
>
> Патч во втором приближении.
>
> ----------------------------------------------
> Дополнительная директива.
>
> syntax: autoindex_ignore [on|off]
> default: autoindex_ignore off
> context: http, server, location
>
> Директива разрешает или запрещает вывод листинга файлов с точкой.
> ----------------------------------------------
>
> --- src/http/modules/ngx_http_autoindex_module.c.orig   2009-05-06
> 17:40:29.000000000 +0400
> +++ src/http/modules/ngx_http_autoindex_module.c        2009-05-07
> 09:29:54.000000000 +0400
> @@ -36,6 +36,7 @@
>     ngx_flag_t     enable;
>     ngx_flag_t     localtime;
>     ngx_flag_t     exact_size;
> +    ngx_flag_t     ignore;
>  } ngx_http_autoindex_loc_conf_t;
>
>
> @@ -77,6 +78,13 @@
>       offsetof(ngx_http_autoindex_loc_conf_t, exact_size),
>       NULL },
>
> +    { ngx_string("autoindex_ignore"),
> +
>  NGX_HTTP_MAIN_CONF|NGX_HTTP_SRV_CONF|NGX_HTTP_LOC_CONF|NGX_CONF_FLAG,
> +      ngx_conf_set_flag_slot,
> +      NGX_HTTP_LOC_CONF_OFFSET,
> +      offsetof(ngx_http_autoindex_loc_conf_t, ignore),
> +      NULL },
> +
>       ngx_null_command
>  };
>
> @@ -269,9 +277,22 @@
>
>         len = ngx_de_namelen(&dir);
>
> -        if (ngx_de_name(&dir)[0] == '.') {
> -            continue;
> -        }
> +        if (alcf->ignore) {
> +            if (len == 1 && ngx_de_name(&dir)[0] == '.') {
> +                continue;
> +                   }
> +
> +           if (len == 2
> +               && ngx_de_name(&dir)[0] == '.'
> +               && ngx_de_name(&dir)[1] == '.')
> +           {
> +               continue;
> +           }
> +       } else {
> +            if (ngx_de_name(&dir)[0] == '.') {
> +                continue;
> +            }
> +       }
>
>         if (!dir.valid_info) {
>
> @@ -618,6 +639,7 @@
>     conf->enable = NGX_CONF_UNSET;
>     conf->localtime = NGX_CONF_UNSET;
>     conf->exact_size = NGX_CONF_UNSET;
> +    conf->ignore = NGX_CONF_UNSET;
>
>     return conf;
>  }
> @@ -632,6 +654,7 @@
>     ngx_conf_merge_value(conf->enable, prev->enable, 0);
>     ngx_conf_merge_value(conf->localtime, prev->localtime, 0);
>     ngx_conf_merge_value(conf->exact_size, prev->exact_size, 1);
> +    ngx_conf_merge_value(conf->ignore, prev->ignore, 0);
>
>     return NGX_CONF_OK;
>  }
>
> --
> Sergey A. Osokin
> osa at MAcomnet.ru
>
>


-- 
С уважением, Борис Долгов.
icq 77556665
e-mail boris at dolgov.name
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://nginx.org/pipermail/nginx-ru/attachments/20090507/d2ef1f73/attachment.html>


More information about the nginx-ru mailing list