[nginx, post_action] хеш ключ или имя файла, кто шарит?

Простые/общие вопросы по UNIX системам. Спросите здесь, если вы новичок

Модераторы: vadim64, terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

[nginx, post_action] хеш ключ или имя файла, кто шарит?

Непрочитанное сообщение ProFTP » 2010-11-24 18:54:41

идет раздача файлов через Nginx

стоит задача выполнить какие-то действия (perl скрипт запустить или в базу записать и нужно знать какой это файл и путь к нему) после того как файл отдался клиенту

post_action:

Код: Выделить всё

location ~* ^/media/.+\.(mp3|wma|ogg|ape|flac)$ {
post_action /counter.php?bs=$body_bytes_sent;
}
тут идет отправка, количество байт

кроме $body_bytes_sent, как отправить после того как клиент скачет что-то одно из:
1) хеш который был прислан для разрешения скачивания файла (чтобы идентифицировать скачивание и файл пользователя)
2) или имя отдаваемого файла, но лучше п.1

где это найти, про п1 и п2?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: [nginx, post_action] хеш ключ или имя файла, кто шарит?

Непрочитанное сообщение ProFTP » 2010-11-25 6:47:51

я добавил строку

Код: Выделить всё

  post_action http://www.site.com/to_nginx?bs=$body_bytes_sent;
в полностью рабочий конфиг

Код: Выделить всё

 # Free                                                                  
        location /download_f/ {                                                 
            alias /home/file/cgi-bin/uploads/;                    
            internal;                                                           
            set $limit_rate  40k;     

     limit_conn one 1;                       

  post_action http://www.site.com/to_nginx?bs=$body_bytes_sent;
                            
        }                                                                       
                                                                                
        # Registered                                                            
        location /download_r/ {                                                 
            alias /home/files/cgi-bin/uploads/;                    
            internal;                                                           
            set $limit_rate  40k;                                               
            limit_conn one 1;     
  post_action http://www.site.com/to_nginx?bs=$body_bytes_sent;
                                              
        }                                                                       
                                                                                
        # Premium                                                               
        location /download_p/ {                                                 
            alias /home/file/cgi-bin/uploads/;                    
            internal;                                                           
            #set $limit_rate  500k;                                             
            limit_conn one 50;       
  post_action http://www.site.com/to_nginx?bs=$body_bytes_sent;                                           
        }                                                                       
                                              
но запрос не отправился после того как я скачал файл, в логах apache на http://www.site.com/ в error и access нету запроса
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение