Welcome! Log In Create A New Profile

Advanced

Re: subs_filter invalid variable name

Maxim Dounin
July 19, 2012 08:36AM
Hello!

On Wed, Jul 18, 2012 at 05:43:22AM -0400, InventOR wrote:

> есть такая подстановка:
>
> subs_filter '</body>' '<script
> type=\"text/javascript\">\n$(\"body\").attr(\"onclick\",
> \"location=\'http://yandex.ru\'\");\n</script>\n</body>';
>
> ругается "nginx: [emerg] invalid variable name in
> конфиг:строка"
> убираю символ $ - все работает. пробовал
> экранировать - не помогает. если же
> заменить на \x24 - код не работает.
>
> Если кто-то сталкивался - подскажите
> как захардкодить данное решение.
> (Вынести во внешний скрипт и подгружать
> его не предлагать)

Это известный баг. В тех местах, где nginx пытается раскрывать
перменные, использовать $ сейчас нельзя. В качестве workaround'а
можно воспользоваться любым из имеющихся способов установить
переменную без раскрытия переменных в устанавливаемом значении,
e.g. должно сработать с помощью map так:

map $pid $bodytext {
default '<script type=\"text/javascript\">\n$(\"body\").attr(\"onclick\", \"location=\'http://yandex.ru\'\");\n</script>\n</body>';
}

subs_filter '</body>' $bodytext;

Maxim Dounin

_______________________________________________
nginx-ru mailing list
nginx-ru@nginx.org
http://mailman.nginx.org/mailman/listinfo/nginx-ru
Subject Author Posted

subs_filter invalid variable name

InventOR July 18, 2012 05:43AM

Re: subs_filter invalid variable name

InventOR July 18, 2012 11:51PM

Re: subs_filter invalid variable name

Maxim Dounin July 19, 2012 08:36AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 157
Record Number of Users: 8 on April 13, 2023
Record Number of Guests: 421 on December 02, 2018
Powered by nginx      Powered by FreeBSD      PHP Powered      Powered by MariaDB      ipv6 ready