Директивы allow и deny

Igor Sysoev is at rambler-co.ru
Fri Aug 14 13:49:51 MSD 2009


On Fri, Aug 14, 2009 at 11:38:12AM +0300, Sandel wrote:

> Здравствуйте!
> Вот после недавнего обновления nginx'a с версии  0.6 на 0.7 столкнулся
> с проблемой...
> На самом деле может проблема присутствовала еще в 0.6 версии...
> возможно я этого просто не замечал....
> В общем сама часть конфига:
> server {
>         listen       80;
>         server_name  blabla.ru;
> 
>         access_log      /var/log/nginx/blabla.ru.access_log main;
>         error_log       /var/log/nginx/blabla.ru.error_log info;
> 
>         error_page   500 502 503 504  /50x.html;
>         location = /50x.html {
>             root   /usr/local/www/nginx-dist;
>         }
> 
>         location ~ \.php$ {
>             fastcgi_pass   unix:/var/run/php-fpm.sock;
>             fastcgi_param  SCRIPT_FILENAME  /var/www/blabla.ru$fastcgi_script_name;
>             include        /usr/local/etc/nginx/fastcgi_params;
>         }
> 
>         location / {
>             root   /var/www/blabla.ru/;
>             index  index.html index.php index.htm;
>         }
> 
>         location /phpmyadmin/  {
>             root   /var/www/blabla.ru/;
>             index index.php;
>             allow 193.138.147.148;
>             deny all;
>         }
>     }
> 
> Нужно спрятать директорию phpmyadmin от всех остальных кроме например 193.138.147.148...
> В общем-то как-то со статическими файлами все прекрасно работало, пока
> я не решил набрать в браузере http://blabla.ru/phpmyadmin/index.php
> ...
> Почему-то при запросе страницы fastcgi она отдается любому, пропуская
> директивы allow и deny ...
> Вот сижу и думаю, где моя ошибка... Возможно подскажите?

Конфигурация location'ов не складываются.

         location ~ ^/phpmyadmin/.+\.php$ {
             allow 193.138.147.148;
             deny all;
             fastcgi_pass   unix:/var/run/php-fpm.sock;
             fastcgi_param  SCRIPT_FILENAME  /var/www/blabla.ru$fastcgi_script_name;
             include        /usr/local/etc/nginx/fastcgi_params;
         }

         location ~ \.php$ {
             ...


-- 
Игорь Сысоев
http://sysoev.ru





More information about the nginx-ru mailing list