Nginx-ru mailing list archive (nginx-ru@sysoev.ru)
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: subs_filter invalid variable name
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@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru
|