ПРОЕКТЫ 


  АРХИВ 


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: rewrite-правила для pre-build динамики - странное экранирование


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: rewrite-правила для pre-build динамики - странное экранирование
  • From: "Igor Zakharov" <garikz@xxxxxxxxx>
  • Date: Thu, 31 Jan 2008 14:32:47 +0300
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from:to:subject:mime-version:content-type; bh=c4cTuIgjl40O0VsIE5L23foe1IMwpLhWKrtq4ae8Vfs=; b=heNST5AKBPahaGQSvLfeNvUqj+fVnlObK7qn9u30NwJ8x1cVxk+LSUQzNnEjuoJWIL6JmAtHZc4OMvXZj8DRX4KwoJX1XFNajFBUw3cTIMEAjUNwKiqKAxVxo6TREL63OfmIxK6hzaBNf9pmLB7tuHhYqRMGFI3WKqCYfH1PQXg=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:to:subject:mime-version:content-type; b=pTbqCB2A63I+Te4Z5lyyouttbLH46E+Oxy0vuNNGO0VxuEp33JVHvllLb8pr35hGA0LLXkPfdINuSNtm2kPlB/o4dSv6sFBEO9/5bBmE4BLztYNQhTjcYVj/Ty+/8hBu2LuKGyw7/g9JMgtJuVAIXIMzg9WzM6okg1J4q+HweCc=

Вот кусок моего конфига:

if ($request_method != POST) {
  rewrite ^(.*)$ /nonPOST? break;
}

location = /nonPOST {

  internal;

  if ($request_uri = '/cgi-bin/index.pl') {
    rewrite ^(.*)$ /index.pl? last;
  }

  if ($request_uri = '/cgi-bin/index2.pl?action="" {
    rewrite ^(.*)$ /index2.pl_action_do? last;
  }

  rewrite ^(.*)$ $request_uri break;

  proxy_pass http://backend;
  proxy_redirect off;
  proxy_set_header Host $host;
}

location = /index.pl {
  types { }
  default_type text/html;
  root /site/apache/share/virthosts/clones.joblist.ru/Data/static/$host;
  internal;
}

location = /index2.pl_action_do {
  types { }
  default_type text/html;
  root /site/apache/share/virthosts/clones.joblist.ru/Data/static/$host;
  internal;
}

То, что идея в текущем виде не работает (отвечает 405) - это пока отложим :)

Но вот что я заметил
в логах на бэкенде для запросов, не попавших под эти правила:

[31/Jan/2008:10:56:12 +0000] "GET /cgi-bin/index2.pl%3faction=agency HTTP/1.0"
[31/Jan/2008:11:11:44 +0000] "GET /cgi-bin/story.pl%3faction=success HTTP/1.0"

конечно же апач говорит 404 на такие запросы. Почему экранируется знако вопроса? Похожий баг был исправлен в 0.5.35, у меня как раз эта версия. Это не может быть как-то связано?




 




Copyright © Lexa Software, 1996-2009.