ПРОЕКТЫ 


  АРХИВ 


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]

rewrite и русские буквы в uri


  • To: nginx-ru@xxxxxxxxx
  • Subject: rewrite и русские буквы в uri
  • From: "Dzurillo" <nginx-forum@xxxxxxxx>
  • Date: Fri, 09 May 2014 03:45:25 -0400
  • Dkim-signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=selenium.jlkhosting.com; s=x; h=Date:Sender:From:Message-ID:Content-Transfer-Encoding:Content-Type:Subject:To; bh=lBdpUbA18jHf0Q5a0S3I6kyBJvCu/N9dVFgmd+DK2wU=; b=hk8KEN8mWVsOMT7Rs/TghJcTobkxlAbDzfaINoF6BA85t0ZVipRRNz7v836176tl3FA8wzWStpHUjxHMb2x/04DkiFLPHpg0KfHmwxggdU2ylPpXUa6KSgfU9wpFSyPjC9yZQo7LmqNqJaQVdqx3Xg+danh/q50sSxw6EyCX8Mk=;

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

Мне нужно сделать со стороны Nginx такую вещь: если пришла ссылка вида
/some/url/param/id/value/other/param/
то взять значение параметра id, т.е. id=value и передать его дальше в
скрипт, как переменную

# правило для указания ?id=value для ссылок вида /gallery/id/username
rewrite ^(.*)\/id\/(\w+)(\/)? $uri?id=$2 last;

Это хорошо работает для латинских символов, но не работает для русских :(
Например, если зайти по ссылке http://mysite/profile/id/Гость, то

REQUEST_URI' => string '/profile/id/%D0%93%D0%BE%D1%81%D1%82%D1%8C'
'QUERY_STRING' => string ''

а для http://mysite/profile/id/guest:
'REQUEST_URI' => string '/profile/id/guest'
'QUERY_STRING' => string 'id=guest'

Собственно вопрос - как подружить rewrite и русские закодированные буквы в
uri?

Спасибо.

Posted at Nginx Forum: 
http://forum.nginx.org/read.php?21,249980,249980#msg-249980

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


 




Copyright © Lexa Software, 1996-2009.