June 24, 2013 12:40AM
Да, согласен, задача весьма нетривиальная. Оттого и прошу помощи.
Предложеный вариант с использованием 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 пользователь admin@sysadmins.el.kg
> <admin@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
Subject Author Posted

Проксирование по referrer

Raven_kg June 21, 2013 06:48AM

Re: Проксирование по referrer

Илья Шипицин June 23, 2013 11:44AM

Re: Проксирование по referrer

Raven_kg June 24, 2013 12:40AM

Re: Проксирование по referrer

Vadim Lazovskiy June 24, 2013 12:56AM

Регулярки для map

Raven_kg June 25, 2013 03:32AM

Re: Регулярки для map

kron June 25, 2013 07:54AM

Re: Регулярки для map

Raven_kg June 26, 2013 12:22AM

Re: Регулярки для map

kron June 26, 2013 06:10AM



Sorry, only registered users may post in this forum.

Click here to login

Online Users

Guests: 240
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