Re: Ограничение доступа по IP + php-fcgi

Алексей Сундуков public-mail на alekciy.ru
Пн Май 24 14:05:49 MSD 2010


Вот вариант с вложенным location-ом лично мне нравиться больше.
Логичный вход в administrator, если файл php то попадает в следующий
location.

С include-ом тоже вариант, но менее наглядный.

24 мая 2010 г. 12:23 пользователь Igor Sysoev <igor at sysoev.ru> написал:
> On Mon, May 24, 2010 at 11:47:03AM +0400, Алексей Сундуков wrote:
>
>> 18 мая 2010 г. 12:49 пользователь Igor Sysoev <igor at sysoev.ru> написал:
>>
>> > location /administrator/ {
>> >    allow 192.168.0.0/24;
>> >    deny all;
>> > }
>> >
>> > location ~ ^/administrator/.+\.php$ {
>> >    allow 192.168.0.0/24;
>> >    deny all;
>> >    fastcgi_pass   127.0.0.1:8000;
>> >    fastcgi_param  SCRIPT_FILENAME
>> >                   /www/beta.autocentre.ua/html$fastcgi_script_name;
>> >    include        fastcgi_params;
>> > }
>>
>>
>> А есть смысл в таком дублировании директив? Если придется изменить
>> адреса, то придется помнить, что править их нужно в двух местах.
>
> Я сторонник сделать внутри сервера десять, а то и двадцать только
> статических location'ов вместо пяти с регулярными выражениями. Да,
> писать побольше, зато потом проще добавлять новое и, сурприз, изменять
> старое. Да, изменить придётся в нескольких местах, но все эти места
> видны при беглом взгляде (особенно, если разместить их рядом - для статики
> не критичен порядок) и не нужно проверять - а как это изменение отразится
> на остальной функциональности.
>
> Хотя в данном случае это не подходит. Ну, если только не описать пять (или
> сколько там) адмнистративных скрипта точными location'ами:
>
> location = /administrator/login.php { ...
> location = /administrator/logout.php { ...
> ...
>
> Можно сделать вложенные location'ы:
>
> location /administrator/ {
>     allow 192.168.0.0/24;
>     deny all;
>
>    location ~ \.php$ {
>        fastcgi_pass   127.0.0.1:8000;
>        fastcgi_param  SCRIPT_FILENAME
>                       /www/beta.autocentre.ua/html$fastcgi_script_name;
>        include        fastcgi_params;
>    }
> }
>
> Наверное, стоит их починить для alias и ему подобного.
>
>
> --
> Игорь Сысоев
> http://sysoev.ru
>
> _______________________________________________
> nginx-ru mailing list
> nginx-ru at nginx.org
> http://nginx.org/mailman/listinfo/nginx-ru
>


Подробная информация о списке рассылки nginx-ru