Пытаюсь считать закачки дистрибутива на сайте, механизм просто – ссылка ведет на http://clipdiary.com/download/clipdiarysetup.exe
в .htaccess мы его редирестим на наш скрипт
RedirectTemp /download/clipdiarysetup.exe _http://clipdiary.com/download/clipdiary.php
clipdiary.php в свою очередь, после увеличения счетчика, выдает уже сам ехе файл
$Name[http://clipdiary.com/download/clipdiary_2.1.exe]
$response:location[$Name]
$response:content-type[application/downloads]
$response:content-disposition[attachment^;filename=$Name]
(это парсер, не php)
Механизм используется годами. Раньше вроде было все ок, потом я заметил, что если качать Download Master‘om то выдается ошибка “вместо файла выдается html страница и скачать файл невозможно”, но решил что трабла у меня (странный я, да?). А поскольку качаю я обычно броузером то ошибка глаза не мозолила, но потом пожаловался пользователь…
Вообщем проблема решилась благодаря коллективному разуму swrus’a и особенно Александру. В кратце, что нужно сделать
1. Перейти на использование mod_rewrite, для этого заменить
RedirectTemp /download/clipdiarysetup.exe _ttp://clipdiary.com/download/clipdiary.php
на (в файле /download/.htaccess)
Options +FollowSymlinks
RewriteEngine on
RewriteRule clipdiarysetup.exe clipdiary.php [QSA]
2. Перестать выдавать content-type и content-disposition, response:location – вполне достаточно
Теперь все работает как часы.
p.s. Как тяжко иметь много сайтов, везде менять запаришся 🙁