Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Проблема с фильтра цией по запросам
On Fri, Jun 08, 2007 at 03:50:32PM +0400, Alex Gakel wrote:
> Спасибо. Только 1 проблема такое правило
>
> if ($request_method ~ "^(POST|HEAD)$") {
> return 403;
> }
> Рубит все запросы POST и HEAD и таким образом POST запросы скриптов не будут
> исполняться. Надо зарубить только POST и HEAD идущие на корень.
Тогда нужно продублировать
location = / {
location / {
и в первом указать проверки.
> P.S. Заранее спасибо за помощь
>
> 2007/6/8, Igor Sysoev <is@xxxxxxxxxxxxx>:
> >
> >On Fri, Jun 08, 2007 at 02:04:47PM +0400, SaVeL wrote:
> >
> >> Необходимо сделать фильтрацию по 3-м запросам:
> >> 1. POST /
> >> 2. HEAD /
> >> 3. GET /?qwertyqwertyqwerty
> >>
> >> Необходимо на такие запросы выдавать ошибку 403. без проксирования на
> >> Apache.
> >>
> >> Прописыванием if добиться не удается. Оч. нужна помощь.
> >>
> >> Конфиг такой:
> >>
> >> server {
> >> listen 89.111.180.163:80 <http://89.111.180.163:80>;
> >> server_name foto.rock-zone.ru <http://foto.rock-zone.ru>;
> >>
> >> #charset koi8-r;
> >>
> >> access_log /home/savel/home/savel/foto
> >> .rock-zone.ru/logs/access_log <http://zone.ru/logs/access_log
> >> combined;
> >>
> >
> > location = /403.html {
> > root ...;
> > }
> >
> >> location / {
> >
> > error_page 403 /403.html;
> >
> > if ($request_method ~ "^(POST|HEAD)$") {
> > return 403;
> > }
> >
> > if ($args ~ "^qwertyqwertyqwerty") {
> > return 403;
> > }
> >
> >>
> >> proxy_pass http://foto.rock-zone.ru:7777;
> >> proxy_redirect off;
> >>
> >>
> >>
> >> proxy_set_header Host $host;
> >> proxy_set_header X-Real-IP $remote_addr;
> >> proxy_set_header
> >X-Forwarded-For $proxy_add_x_forwarded_for;
> >>
> >> client_max_body_size 10m;
> >> client_body_buffer_size 128k;
> >>
> >> proxy_connect_timeout 90;
> >> proxy_send_timeout 90;
> >> proxy_read_timeout 90;
> >>
> >> proxy_buffer_size 4k;
> >> proxy_buffers 4 32k;
> >> proxy_busy_buffers_size 64k;
> >> proxy_temp_file_write_size 64k;
> >> }
> >>
> >> # Static files location
> >> location ~*
> >>
> >^.+\.(jpg|jpeg|gif|png|ico|mp3|css|zip|tgz|gz|rar|bz2|doc|xls|exe|pdf|dat|avi|ppt|txt|tar|mid|midi|wav|bmp|rtf|wmv|mpeg|mpg|tbz|js)$
> >> {
> >> root /home/savel/home/savel/foto.rock- zone.ru/docs
> >> <http://zone.ru/docs>;
> >> }
> >>
> >> }
> >>
> >
> >--
> >Игорь Сысоев
> >http://sysoev.ru
> >
> >
--
Игорь Сысоев
http://sysoev.ru
|