ПРОЕКТЫ 


  АРХИВ 


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: $uri - url_encoded?


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: $uri - url_encoded?
  • From: xinu <xinu@xxxxxxx>
  • Date: Tue, 14 Sep 2010 21:31:05 +0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mail.ru; s=mail; h=Message-Id:Content-Transfer-Encoding:Content-Type:Reply-To:In-Reply-To:References:Date:Mime-Version:Subject:To:From; bh=kwvO0YGtazS1QXBWvRMDDW20xUfR2tvolWHVmN5LX9A=; b=Iqy6pC9Ix98n7awSg+lhoFMpZOdKkAQtthWE/pakB0p+PlTlwHwDUgPalf/1i1oyFgMJK0BUCOs2Ei/4NaZNNRw9yPkNBaFqSUXdXulaeXD9Jo8+RcVu9qI+DGb5gV6X;
  • In-reply-to: <E1OvYhP-0005Y9-00.xinu-list-ru@xxxxxxxxxxxx>
  • References: <E1OvYhP-0005Y9-00.xinu-list-ru@xxxxxxxxxxxx>

sorry, поспешил с enter.

вопрос, который собственно и хотел написать:

как убедить nginx не переводить запрошенный URL в urldecoded?

моя проблема в пробелах, которые я кодирую в cms "%20", все файлы также (т.е. с 
"%20" лежат на диске - т.е. без пробелов (!!!).
однако запрос

GET /file%20with%20blank HTTP/1.1

будет по try_files искать "/file with blank" - файл, который я генерирую как 
"/file%20with%20blank"

$request_uri - выглядет так как мне надо и работал бы, но - не помогает, т.к. 
есть еще реврайты и try_files мне нужен по измененному УРЛу.
реврайты же только ухудшают УРЛ - переписывая его с "%20" на "%2520" -- т.е 
переписываю "%" в его url_ecoded форму: "%25".

как однозначно определить поведение / реакцию nginx'а ?

если решение еще нет, опции (в конфиге в server, location и в if) :

     url_dencoding on / of;

помогли бы.

большое спасибо.

Сергей.

ps: sbin/nginx -v
nginx version: nginx/0.8.34


ps2: подобная проблема распространяется и на многие другие "символы" например 
"/" -> "%2f"
т.е. если мне нужен файл с именем "2/3" - не файл 3 в каталоге 2 , а именно 
"2/3" -- я делаю просто "2%2f3" файл - на мой взгляд - удобно.

считаю фичу полезной.

если же есть другое готовое решение - буду рад и признателен его узнать

еще раз спасибо

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://nginx.org/mailman/listinfo/nginx-ru

  • References:

 




Copyright © Lexa Software, 1996-2009.