ПРОЕКТЫ 


  АРХИВ 


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: запрет прямого доступа к ф айлу news.php



Мне кажется правильнее всего держать его за пределами публичной директории, т.е. скажем root /site/public а fastcgi_param SCRIPT_FILENAME /site/private/news.php

22 ноября 2009 г. 15:44 пользователь <actionmanager@xxxxxxxxx> написал:

> Здравствуйте!

> Вы писали 22 ноября 2009 г., 0:48:06:


>>>> есть следующий конфиг:
>>>>
>>>> location /news/ {
>>>>   root   /home/site.ru;
>>>>   rewrite "^/news/((\d{4}))/?" /news.php?year=$1 last;
>>>>   rewrite "^/news/view/((\d{2,5}))/?" /news.php?view=$1 last;
>>>>   rewrite ^/news/$ /news.php last;
>>>> }

> Ну, как-бы это не конфиг, а часть конфига, которая не описывает, как
> будет обрабатываться запрос /news.php.

>>>>
>>>> всё работает, но необходимо запретить прямой вызов файла news.php
>>>>
>>>> http://site.ru/news.php
>>>>
>>>> посоветуйте пожалуйста как правильно это сделать.

>>> location = /news.php {
>>>         internal;
>>> }


>> неа, не хочет(
>>     404 выдаёт на news.php и тут везде:

>>    http://site.ru/news/2009/
>>    http://site.ru/news/view/20/
>>    http://site.ru/news/


> Наверное требуется дописать в локейшн =/news.php проброс запроса на
> исполнение соответствующими средствами (proxy_pass,fastcgi_pass, etc) ?

> Использовать ответы стоит не как абсолютно точный
> рецепт, а как направление к размышлению. Вы же совета просили?



точно, спасибо ;)





 




Copyright © Lexa Software, 1996-2009.