А как ты в этом случае определишь что, файл качается одним юзером? Мне кажется способ анализа логов неприменим.
Я исхожу из следующий предположений:
1. Приносит рейтинг завершение скачивания файла
2. Приносит рейтинг завершение скачивания файла одним конкретным пользователем.
Отсюда мне видится примерно следующая последовательность действий.
Файл отдается скриптом. Для скачивания выделяется уникальная ссылка. По окончании закачки ссылка убивается.
Данный способ позволяет к тому установить некоторый срок, после которого докачка файла невозможно. Везде где я видел скачивание с рейтингом это реализовано примерно так.