1. Это можно сделать через rewrite, но не вижу особого смысла.
Вот работающий пример (nginx/0.3.5) :
# редиректим всех внешних прямых качков
valid_referers none www.zvuki.ru/ dl.zvuki.ru/ dl2.zvuki.ru/;
if ($invalid_referer) {
rewrite ^/([0-9][0-9][0-9])/mp3/(.*)\.mp3$
http://www.zvuki.ru/T/P/$1/mp3/$2;
}
у меня значительная часть закачек без реферера - если я их отрублю это
будут потерянные клиенты/деньги.
valid_referers none
позволяет отдать файл на запрос без реферера - например, при набирании
URL'а ручками