Как считать запросы в файл - PullRequest
0 голосов
/ 25 апреля 2011

Как, у меня есть файл на FTP http://site.com/download/file.zip

Я загружаю его по прямому запросу с вкладки адреса браузера.

Как подсчитать количество запросов этого файла?

Или как убрать возможность таких запросов, чтобы они работали только по php?

Ответы [ 4 ]

2 голосов
/ 25 апреля 2011

Если кто-то может получить доступ к файлу, введя URL-адрес, вы не можете реально подсчитать доступы, кроме чтения журнала доступа веб-сервера.

Что вы можете сделать это:

  1. Сделать сам файл недоступным через любой URL
  2. Напишите PHP-скрипт, который «обслуживает файлы» в соответствии с переданным ему параметром запроса
  3. Держите счет внутри этого скрипта

Обычно сценарий на шаге 2 будет выглядеть примерно так:

// Increase your "download count" by one

// $mimeType is the MIME type of the file you are serving
//     e.g. "application/octet-stream"
// $filename is the name that the browser will offer as a default
//     in the "save file" dialog
// $filepath is the real path of the file on your web server

header('Content-Type: '.$mimeType);
header('Content-Disposition: attachment; filename="'.$filename. '";' );
header('Content-Length: '.filesize($filepath));

readfile($filepath);
die;
1 голос
/ 25 апреля 2011

Вы можете создать файл download.php, который обрабатывает загрузку. Я имею в виду:

http://site.com/download.php?dl=file

И в таком файле вы делаете все, что хотите (регистрируйте метку времени, увеличивайте количество загрузок ...). Затем перенаправьте, чтобы загрузить файл.

0 голосов
/ 25 апреля 2011

Если вы не веб-гуру.Вы можете сделать то, что сказал @Ale, поместив его в файл, а затем создав файл.В этот файл поместите аналитику Google и просто отследите ее оттуда.У вас будет все, даже там, где они есть, сколько разных людей ... и так далее.

Надеюсь, это поможет.

0 голосов
/ 25 апреля 2011

Вы можете удалить возможность прямого доступа к файлу с файлом .htaccess:

<FilesMatch ~ "^file\.zip$">
    Deny from all
</FilesMatch>
...