ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Изменение опций на осно ве IP-адреса клиента



On Sat, Apr 16, 2011 at 02:19:56PM +0700, Medvedchikov Alexey wrote:
> 
> Здравствуйте.
> 
> Возникла необходимость некоторому набору блоков адресов показывать
> содержимое папки, иначе отдавать какую-либо страничку (или просто 403).
> Я начинающий пользватель nginx, т.ч. возможно будет достаточно ткнуть в
> документацию палцем :). Пример работающего конфига:
> 
> ==== 8< ====
> geo $allowed_ips {
>   default 0;
>   127.0.0.0/8 1;
> }
> 
> server {
>   error_page 590 @enable-autoindex;
> 
>   location @enable-autoindex {
>     internal;
>     root /var/www/somesite.tld/files;
>     autoindex on;
>   }
> 
>   location / {
>     if ($allowed_ips) {
>       return 590;
>     }
>     # просто показываем страничку, например
>     # настройки index'а и пр подразумеваются
>     autoindex off;
>     root /var/www/simesite.tld/htdocs;
>   }
> }
> ==== 8< ====
> 
> Есть ли возможность реализовать такой функционал "красивее", без
> использования фиктивного кода ошибки? Хорошим сахаром в конфигурации
> был бы, например:
> 
> ==== 8< ====
> geo $is_autoindex_allowed {
>   default off;
>   127.0.0.0/8 on;
> }
> 
> #...
> 
> location / {
>   autoindex $is_autoindex_allowed;
> }
> ==== 8< ====
> 
> Спасибо!

 geo $forbbiden_ips {
    default      1;
    127.0.0.0/8  0;
 }

    location / {
        index      index.html  /index.$forbbiden_ips.html;
        autoindex  on;
        root /var/www/simesite.tld/htdocs;
    }

В /var/www/somesite.tld/htdocs/index.1.html лежит страница с 403.
Файла /var/www/somesite.tld/htdocs/index.0.html нет.


-- 
Igor Sysoev

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.