nginx: условие местоположения + secure_link - PullRequest
1 голос
/ 07 мая 2011

Мне сложно определить правильную конфигурацию.

У меня есть URL - например,

http://example.com/[md5-checksum]/[num-value-1]/[num-value-2]/[file-name]
http://example.com/ac64392dba67d618ea6a76843c006708/123/56789/test.jpg

Я хочу убедиться, что контрольная сумма md5 соответствует salt+ num-value-2 .Таким образом, имя файла и num-value-1 следует игнорировать (необходимо только для заголовка имени файла) для построения контрольной суммы md5.

Следующая конфигурация не приводит к тому, чего я хочу достичь.

location ~* ^/download/([a-zA-Z0-9]+)/([0-9]+)/([0-9]+)/(.*)$ {

   secure_link $3;
   secure_link_md5 segredo$3;

   if ($secure_link = "") {
      return 500;
   }

   set $filename $4;
   add_header Content-Disposition "attachment; filename=$filename";
   rewrite ^/download/([a-zA-Z0-9]+)/([0-9]+)/([0-9]+)/(.*)$ /$2/$3 break;

}

Я ценю любую помощь!

1 Ответ

1 голос
/ 09 мая 2011
secure_link $3

должно было быть

secure_link $1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...