Re: map и regexp
Igor Sysoev
igor на sysoev.ru
Чт Апр 28 15:07:47 MSD 2011
On Thu, Apr 28, 2011 at 05:05:04PM +0600, Mikhail Mazursky wrote:
> 28 апреля 2011 г. 15:14 пользователь Igor Sysoev <igor at sysoev.ru> написал:
> > On Thu, Apr 28, 2011 at 02:58:38PM +0600, Mikhail Mazursky wrote:
> >> Здравствуйте!
> >>
> >> Судя по чейнджлогу в 0.9.6+ map поддерживает регулярные выражения.
> >>
> >> Подскажите пожалуйста вот такая конструкция будет работать? Сам
> >> проверить пока не могу т.к. нет свежей версии nginx под рукой.
> >>
> >> map $host $var_from_host {
> >> ^(.+?)\.domain\.tld$ $1;
> >> }
> >>
> >> Не хочу использовать регулярки в server_name.
> >
> > default "";
> > ^(<?NAME>.+?)\.domain\.tld$ $NAME;
>
> Не работает:
> # sudo service nginx restart
> Restarting nginx: nginx: [emerg] unknown "name" variable
> nginx: configuration file /etc/nginx/nginx.conf test failed
>
> Полный конфиг:
> user www-data;
> worker_processes 1;
>
> error_log /var/log/nginx/error.log;
> pid /var/run/nginx.pid;
>
> events {
> worker_connections 1024;
> # multi_accept on;
> }
>
> http {
>
> map $host $domainId {
> default "";
> ^(?<name>.+?)\.test$ $name;
> #пробовал ^(?P<name>.+?)\.test$ $name;
> #пробовал ^(<?name>.+?)\.test$ $name; - это была опечатка?
> }
> }
- ^(?<name>.+?)\.test$ $name;
+ ~^(?<name>.+?)\.test$ $name;
--
Igor Sysoev
Подробная информация о списке рассылки nginx-ru