Re: Проксирование по referrer
как-то так можно попробовать вытащить map $http_referer $backend { default -; ~*(?b[^\;]+)(?:\;|$) $b; } это решит грабли No.1, но задача в целом выглядит весьма запутанной. 21 июня 2013 г., 16:45 пользователь ad...@sysadmins.el.kg ad...@sysadmins.el.kg написал: Доброго всем дня. Пытаюсь поднять сервер для проксирования некоего узкоспециализированого приложения. Аппликуха у себя формирует ссылки на него, с указанием в качестве реферала ссылку на один из серверов за ним. Т.е. в теории это должно выглядеть сл. образом - посетитель жмет на сайте ссылку ведущую на site.tld, прокси на этом самом site.tld разобрав $http_referrer извлекает из него ссылку к site[1-9].tld дописывает ему в куку адрес нужного из этих самых site[1-9].tld и отправляет на соответствующий сервер. Ну а дальнейшие обращения уже на основе кук. Грабли No.1: - предполагал указать адрес прокси в виде переменной: if ($http_referer ~* *\.*) { set $backend извлеченный из реферала домен; } location / { proxy_pass http://$backend; ... Только как? Грабли No.2: то же что и Грабли1 только с куками. ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: ограничение скорости
503 отдавать? Мне надо скорость ограничить, а не посетителей что не влазят выгонять... Posted at Nginx Forum: http://forum.nginx.org/read.php?21,240203,240290#msg-240290 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: ограничение скорости
Здравствуйте. Думаю, стоит взглянуть: http://mdounin.ru/hg/ngx_http_ip_tos_filter_module/ Трафик далее зашейпить. 24 июня 2013 г., 1:06 пользователь muhas nginx-fo...@nginx.us написал: 503 отдавать? Мне надо скорость ограничить, а не посетителей что не влазят выгонять... Posted at Nginx Forum: http://forum.nginx.org/read.php?21,240203,240290#msg-240290 ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru -- Best Regards, Vadim Lazovskiy ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Проксирование по referrer
Да, согласен, задача весьма нетривиальная. Оттого и прошу помощи. Предложеный вариант с использованием map не подходит потому, что map работает в блоке http, мне же критично запускать его из server. Вкратце о приложении - веб-страница, хрянящаяся на site[1-9].tld и загружаемая на сторонние сайты посредством iframe.../iframe. На каждом бэкенде она разная, количество бэкендов растет в геометрической прогресии, а некоторые сайты, внедряющие к себе это приложение (напр. facebook) требуют ssl-шифрование. Чтобы избежать каши с ssl-сертификацией всех бэкендов было сочтено целесообразным использование прокси, шифрующего соединения, и проксирующего на http-бэкенды. как-то так можно попробовать вытащить map $http_referer $backend { default -; ~*(?b[^\;]+)(?:\;|$) $b; } это решит грабли No.1, но задача в целом выглядит весьма запутанной. 21 июня 2013 г., 16:45 пользователь ad...@sysadmins.el.kg ad...@sysadmins.el.kg написал: Доброго всем дня. Пытаюсь поднять сервер для проксирования некоего узкоспециализированого приложения. Аппликуха у себя формирует ссылки на него, с указанием в качестве реферала ссылку на один из серверов за ним. Т.е. в теории это должно выглядеть сл. образом - посетитель жмет на сайте ссылку ведущую на site.tld, прокси на этом самом site.tld разобрав $http_referrer извлекает из него ссылку к site[1-9].tld дописывает ему в куку адрес нужного из этих самых site[1-9].tld и отправляет на соответствующий сервер. Ну а дальнейшие обращения уже на основе кук. Грабли No.1: - предполагал указать адрес прокси в виде переменной: if ($http_referer ~* *\.*) { set $backend извлеченный из реферала домен; } location / { proxy_pass http://$backend; ... Только как? Грабли No.2: то же что и Грабли1 только с куками. ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru
Re: Проксирование по referrer
Здравствуйте. Блок map только декларируется на уровне http. Вычисление значения переменной происходит только при обращении к ней. 24 июня 2013 г., 8:38 пользователь ad...@sysadmins.el.kg ad...@sysadmins.el.kg написал: Да, согласен, задача весьма нетривиальная. Оттого и прошу помощи. Предложеный вариант с использованием map не подходит потому, что map работает в блоке http, мне же критично запускать его из server. Вкратце о приложении - веб-страница, хрянящаяся на site[1-9].tld и загружаемая на сторонние сайты посредством iframe.../iframe. На каждом бэкенде она разная, количество бэкендов растет в геометрической прогресии, а некоторые сайты, внедряющие к себе это приложение (напр. facebook) требуют ssl-шифрование. Чтобы избежать каши с ssl-сертификацией всех бэкендов было сочтено целесообразным использование прокси, шифрующего соединения, и проксирующего на http-бэкенды. как-то так можно попробовать вытащить map $http_referer $backend { default -; ~*(?b[^\;]+)(?:\;|$) $b; } это решит грабли No.1, но задача в целом выглядит весьма запутанной. 21 июня 2013 г., 16:45 пользователь ad...@sysadmins.el.kg ad...@sysadmins.el.kg написал: Доброго всем дня. Пытаюсь поднять сервер для проксирования некоего узкоспециализированого приложения. Аппликуха у себя формирует ссылки на него, с указанием в качестве реферала ссылку на один из серверов за ним. Т.е. в теории это должно выглядеть сл. образом - посетитель жмет на сайте ссылку ведущую на site.tld, прокси на этом самом site.tld разобрав $http_referrer извлекает из него ссылку к site[1-9].tld дописывает ему в куку адрес нужного из этих самых site[1-9].tld и отправляет на соответствующий сервер. Ну а дальнейшие обращения уже на основе кук. Грабли No.1: - предполагал указать адрес прокси в виде переменной: if ($http_referer ~* *\.*) { set $backend извлеченный из реферала домен; } location / { proxy_pass http://$backend; ... Только как? Грабли No.2: то же что и Грабли1 только с куками. __**_ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/**mailman/listinfo/nginx-ruhttp://mailman.nginx.org/mailman/listinfo/nginx-ru __**_ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/**mailman/listinfo/nginx-ruhttp://mailman.nginx.org/mailman/listinfo/nginx-ru __**_ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/**mailman/listinfo/nginx-ruhttp://mailman.nginx.org/mailman/listinfo/nginx-ru -- Best Regards, Vadim Lazovskiy ___ nginx-ru mailing list nginx-ru@nginx.org http://mailman.nginx.org/mailman/listinfo/nginx-ru