ПРОЕКТЫ 


  АРХИВ 


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: Подмена урла с отдачей файла


  • To: nginx-ru@xxxxxxxxx
  • Subject: Re: Подмена урла с отдачей файла
  • From: Роман <n.g.i.n.x.e.r@xxxxxxxxx>
  • Date: Sun, 14 Apr 2013 22:28:13 +0400
  • Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:content-type; bh=5Ix70D1Qv7aUY5QZ8yMT+sgmgT+ok6ujq4F69xNroE4=; b=JjFv3yCiKlEMv8rTXAZvm+KcwruCNyyHNiS3CPjjrOEGx5vA0yb2D5KgveS93wGACz F78Qfk66li1Up28KSV3mdat2ixTnVqXmxORisYRq/wFEszrw8z0oLBMlk/s9L+MrgkkM JEnFHYPf0E1hKVUw32IVFlkuBePqR99fU84fesDpAB7ElZW0BnijFH+aAuDAQ6N8ga8Z WRezvQvx9RwEAKC0MD2n3SlsPScVOzW0uGjM4WAVjfsXuqHsQUrmv6TuOfWcaa1xLv6q MHJXBZRMpLS+AKXLP6VQdfhnlla+W7FHJQPM/U1ZtW85YxOvn0q5VyOjSPRBE8DMfsdu fmTw==
  • In-reply-to: <0634474A-FDE6-4CE6-9B1D-B040AB42C80D@sonru.com>
  • References: <CAM_OpgT8cFy0-W5mMpmj7PR0=GHhKcSGP9u-0gpO462mL9MCSQ@mail.gmail.com> <393F6BB5-84C8-4C57-84B8-1548A280D829@sonru.com> <CAM_OpgTpVmit+gXgTN7ouS8X-QX5x84Vj=__gUM1R1TTE8CB0w@mail.gmail.com> <0634474A-FDE6-4CE6-9B1D-B040AB42C80D@sonru.com>

При генерации файла инфа о нем кладется в бд и мемкеш
а при отдаче всего то надо взять одно значение из мемкеша
вот и думаю как бы это сделать с минимальными потерями.


14 апреля 2013 г., 22:11 пользователь Anatoly Mikhailov <anatoly@xxxxxxxxx> написал:

On Apr 14, 2013, at 6:32 PM, Роман <n.g.i.n.x.e.r@xxxxxxxxx> wrote:

Дело в том, что ссылки не постоянные.
Короткая и настоящая лежат в базе.


определитесь что вам, все таки, нужно:
- "без какого либо скрипта в бекенде"
- "ссылки непостоянные, короткая и настоящая лежат в базе."

Анатолий



14 апреля 2013 г., 2:49 пользователь Anatoly Mikhailov <anatoly@xxxxxxxxx> написал:

On Apr 13, 2013, at 10:45 PM, Роман <n.g.i.n.x.e.r@xxxxxxxxx> wrote:

Есть задачка скрыть реальное нахождение файла и отдавать его по
короткой ссылке. Например: заходим по ссылке
http://site.com/03209393/file.tgz, скачивание идет по ссылке
http://site.com/03209393/file.tgz, а на самом деле файл находится тут
http://site.com/arhive/file.tgz

Задача довольно простая на первый взгляд, если бы не одно но.

Можно ли читать реальную ссылку не скриптом, а например из мемкеша?
Тогда бы nginx считывал ссылку и от давал файл без какого либо скрипта
в бекенде.

Вся задача сводится к убиранию бекенда.

можно даже без мемкэша обойтись, просто соберите nginx с опцией --with-http_secure_link_module

location /download/ {
rewrite /download/([a-zA-Z0-9_\-]*)/([0-9]*)/(.*)\.tgz$ /archive/$3.tgz?st=$1&e=$2;
}

location /archive/ {
internal;
secure_link $arg_st,$arg_e;
secure_link_md5 YOUR_SECRET_PASSWORD_HERE$arg_e$uri;
 
if ($secure_link = "") { return 403; }
if ($secure_link = "0") { return 403; }
 
             }

YOUR_SECRET_PASSWORD_HERE - пароль, с помощью которого вы делаете шифр, $arg_e - timestamp
пример того, как генерить урлы на Ruby здесь https://gist.github.com/mikhailov/3174601

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru

_______________________________________________
nginx-ru mailing list
nginx-ru@xxxxxxxxx
http://mailman.nginx.org/mailman/listinfo/nginx-ru


 




Copyright © Lexa Software, 1996-2009.