ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 


  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА












     АРХИВ :: nginx-ru
Nginx-ru mailing list archive (nginx-ru@sysoev.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: rewrite в завсимости от referer c кешированием :)


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: rewrite в завсимости от referer c кешированием :)
  • From: BelSat Support <support@xxxxxxxxxx>
  • Date: Mon, 23 Feb 2009 22:33:08 +0200
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:sender:received:in-reply-to :references:date:x-google-sender-auth:message-id:subject:from:to :content-type:content-transfer-encoding; bh=rv8krJI5WpsUVm3ZexP0dtSJnS4OU4N/YmKFgtrlR0g=; b=pt/zehn3/0H1OAfQ5ulFERhYIqPGRNxxc1XKP4eqPiBs4k8S9dO5htoVFPUvcm3aIQ WNLCdDcP2vT7rMRzY9/pOfXMRqU1cagLLU6azkJCHc27yBkYTCwqlPkgaBV+QPrwazNV fLSfpq+wG64Cz56qSsgFRD4WQ8g0ohRByVqnk=
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:content-type :content-transfer-encoding; b=rALe24oFyBZ0q6zpbbEFrehN0VjI0xcvlbG/bRUqqdDsCkcS/N3/ucvjmXmzieFXhP YkuodDNFcaaJfqb/KShY4k0/HNoce5Xe/msiP6EAX3TFsmufLf9VvrumWPlwXVdedLV0 bULaEzZhkpb/ej37+6ve7pG/dp/6a6t9SBMTw=
  • In-reply-to: <49A2DDBA.4060105@xxxxxxxx>
  • References: <75cce9dd0902230905i7acdd871h13e8deea83766354@xxxxxxxxxxxxxx> <49A2DDBA.4060105@xxxxxxxx>

23 февраля 2009 г. 19:32 пользователь Alex Loskutov <alexus@xxxxxxxx> написал:
>> И никак не могу понять что мне прописать в @site1.ru  чтобы отработал
>> скрипт /client/site1.ru/v2.php?id=$5
>
> proxy_pass        http://apache:port/;

да не.
Возможно я неправильно выразился или просто чего то не допонимаю.

если я неправ поправьте:

1. выполняется правило rewrite
"^(/pic_b)/([0-9].*)/([0-9].*)/([0-9].*)/(.*)\.(.*)" $ref_dir/$5.$6
last; (отдать картинку сушествующую в кеше)
2. если картинки нет то срабатывает правило 404 и перекидывает в @site1.ru
3. я думаю что в @site1.ru нужно опять сделать реврайт, но уже на
скрипт /v2.php...
4. вопрос в следующем какой или хотя бы какие $uri и.т.д. нужно
реврайтить. Исходные или уже преобразованные на прошлом шаге.
5. извините за запутанность :)
6. возможно мой подход и не оптимальный.
>
> BelSat Support пишет:
>>
>> Здравствуйте
>>
>> помогите с правилами для rewrite
>>
>> Стоит задача в зависимости от referer с которого пришел юзер выдать
>> ему картинку с определенным warermark ? чтобы постоянно не дергать
>> апач организовать подобие кеширования. Т.е.
>>
>> 1. читаем реферер
>> 2. перекидываем клиента в его папку кеша и выдаем картинку оттуда
>> 3. если картинки нет то перекидываем на скрипт который формирует
>> картинку с водяным знаком отдает клиенту и складывает в кеш для
>> последующих запросов.
>>
>>
>> по отдельности все работает :) вместе никак не могу осилить.
>>
>> пытался так :
>>
>> if ($http_referer ~ site1.ru )
>>   {
>>   set $ref_dir "/client/site1.ru";
>> #    rewrite  "^(/pic_b)/([0-9].*)/([0-9].*)/([0-9].*)/(.*)\.(.*)"
>> $ref_dir/v2.php?id=$5
>>   rewrite  "^(/pic_b)/([0-9].*)/([0-9].*)/([0-9].*)/(.*)\.(.*)"
>> $ref_dir/$5.$6 last;
>>   error_page  404 = @site1.ru;
>>   }
>>
>> И никак не могу понять что мне прописать в @site1.ru  чтобы отработал
>> скрипт /client/site1.ru/v2.php?id=$5
>>
>> location @site1.ru {
>> ???????????
>> }
>>
>>
>> Спасибо за внимание.
>>
>
>
>


 




Copyright © Lexa Software, 1996-2009.