Запрос на mysql из модуля

Nikolay Sivko default_xz at inbox.ru
Thu Dec 18 15:28:21 MSK 2008


Georg Tadeev пишет:
>
> Nikolay,
> буду очень благодарен если покажешь модуль, с mysql-ом пока проблем не 
> удалось решить.
> Спасибо заранее,
>
>
На самом деле это пропатченный AccesKey модуль 
(http://wiki.codemongers.com/NginxHttpAccessKeyModule), лежит тут: 
http://94.124.200.59/pub/ngx_http_expirelink_module.tar.gz
При запросе файла с сервера в аргументах передается время до которого 
ссылка валидна и (md5|sha1) хэш от "URI,expire_time,salt", если текущее 
время меньше expire_time и хэш верный файл отдается, в противном случае 
- 403.
Пример конфига:

location /files/ {
   expirelink on; #включаем
   expirelink_arg "s"; #имя аргумента с хэшом
   expirelink_timestamp_arg "t"; #имя аргумента с временем, до которого валидна ссылка
   expirelink_signature "1234112121"; #секретное слово
   expirelink_hashmethod md5; #тип хэша (md5|sha1)
   root   /var/www/storage;
}



> 2008/12/17 Nikolay Sivko <default_xz at inbox.ru 
> <mailto:default_xz at inbox.ru>>
>
>     Georg Tadeev пишет:
>
>
>         Кирилл спасибо за ответ.
>
>         Кратко скажу в чём дела.
>
>         Делаю всё это для Download Manager-а.
>
>         Схема такая: клиент заходит на php скрипт, который генерирует
>         для него уникальный URL, типа
>         http://server.com/files/myfile.rar?key=abcdef123, потом пишет
>         в базу этот URL, ип клиента, и дату до которой ссылка будет
>         существовать. Привязка URL к ип уже реализовано в модуле
>         access-key, вот и подумал также проверить срок простым sql
>         запросом. Не хочу отдавать фаил через php, сильно тормозит.
>
>
>     Время, до которого валидна ссылка, ставьте в параметры + в
>     параметры суньте некий хэш от (uri без аргументов+expire
>     time+секретное слово)
>     То есть ссылка получится вида:
>      http://server.com/files/myfile.rar?expire=1229539081&key=8273b7175dc46c99113a0bfdb6bafad1
>     <http://server.com/files/myfile.rar?expire=1229539081&key=8273b7175dc46c99113a0bfdb6bafad1>
>     <http://server.com/files/myfile.rar?key=abcdef123>
>     Модуль, который реализует данный функционал могу выложить, если нужно.
>
>
>         С уважением
>
>          
>
>         2008/12/17 Kirill A. Korinskiy <catap at home.catap.ru
>         <mailto:catap at home.catap.ru> <mailto:catap at home.catap.ru
>         <mailto:catap at home.catap.ru>>>
>
>
>            At Wed, 17 Dec 2008 18:17:15 +0400,
>            Georg Tadeev wrote:
>
>            > Есть альтернатива?
>            >
>            > Можете подсказать каким путём лучше?
>            >
>            > Может быть named pipes? Есть где-нибудь пример
>         использования из
>            модуля?
>
>            Если хочется ходить в mysql из nginx, то придеться
>         mysqlclient обучить
>            ngx_event_t, что бы одна точка была работы с сетью.
>
>            А вынести авторизацию на внешний ресурс (fcgi или простой http
>            демон) нельзя?
>
>
>
>
>






More information about the nginx-ru mailing list