Merhabalar,
Birden fazla yöntemle bunu yapmanız mümkün, ben aklıma gelen 3 yöntemi paylaşmak istiyorum.
Herhangi bir içerik yönetim sisteminden bağımsız olarak PHP ile basit bir şekilde yapılabilir.
Download edilecek dosya için bir adres belirlenir. Örneğin dosya adresi xxx.com/file.zip şeklinde ise xxx.com/dosyaindir/file.zip (xxx.com/dosyaindir.php?yol=file.zip) şeklinde bir sayfa oluşturulur. Bu sayfa, değişkende belirtilen dosyayı indirtmeye yarar.
Bu sayfa içerisinde de giren kişilere özel bir session sayaç oluşturulur. Her yeni bir indirme sayfasına girildiğinde ise bu sayaç 1 defa artar. İndirme limiti kaçsa ona geldiğinde ise "günlük indirme limitiniz dolmuştur" tarzında bir ifade belirir. Çerezlerle de yapılabilir, indirme limitine göre de çerez süresi kendini yeniler. Diğer bir yöntem ise dosya indiren kişinin IP adresinin günlük havuza eklenmesidir. Bir kişi aynı havuza 5 kere eklenmişse, o IP adresine günlük kotanız dolmuştur yazısı gönderilir. Günün sonunda ise hazırlanmış olan sistem veri tabanını boşaltır.
3 şekilde yapmak mümkün, bunu koda dökmek ise yapmak isteyen arkadaşlara kalmış diyeyim. :)