ПРОЕКТЫ 


  АРХИВ 


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: Регулярки для map



Благодарю за помощь с первой регуляркой - это как раз то, что доктор прописал. А вот во втором случае встроенными переменными не обойтись, поскольку указанный мной url

http(s)://test.local/(site([1-9]))

не является переданным от клиента (иначе проблемы ?2 не было бы вообще). Данная строка изымается nginx'ом из бд посредством модуля ngx_postgres исходя из того, что вернет как раз-таки та самая первая регулярка. Далее ее нужно раздробить на 3 части и если $протокол = http://, то спроксировать на $домен, если конечный сайт в подпапке - добавить $путь к $request_uri, если же $протокол = https:// - тогда просто сделать редирект. Вот как-то так у меня задача поставлена.


25.06.2013 17:53, Kron пишет:
1.

map $request_uri $num {
"~*/pages/Test/(?<n>\d+)" $n;
}

2.

http://nginx.org/ru/docs/http/ngx_http_core_module.html
читать про "встроенные переменные"

25.06.2013, 11:31, "admin@xxxxxxxxxxxxxxx" <admin@xxxxxxxxxxxxxxx>:

  Доброго всем!

  Помогите плз с регулярками для map'ов.

  Имеется строка типа:
    https://www.facebook.com/pages/Test/123456789123456?sk=app_987654321987654
  которая приходит как реферал. Нужно получить из нее первый блок цифр -
  "123456789123456".

  Также имеется строка http(s)://test.local/(site([1-9])) которую мне
  нужно разбить на 3 части - протокол, домен, uri. То есть получить
  отдельно "http(s)://", "test.local" и "/(site([1-9]))".

  Только что-то я не совсем понимаю как их составлять... :-[

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

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


 




Copyright © Lexa Software, 1996-2009.