Статистика htaccess для определенного типа файлов - PullRequest
1 голос
/ 24 июля 2011

Я искал повсюду, но ничего не мог найти, поэтому я здесь, чтобы прибегнуть к моей последней надежде:)

Я пытаюсь создать статистику просмотра страниц только для моих файлов, заканчивающихся на swf. Мне было интересно, возможно ли, что htaccess может запросить URL другого php-файла, если расширение файла, к которому они собираются, заканчивается в .swf, но все еще попадает на страницу swf.

Я знаю, что мог бы легко использовать javascript с функцией onclick ссылки, но это просто не будет работать для прямых ссылок / референтов.

Ответы [ 2 ]

1 голос
/ 24 июля 2011

Конечно, вы можете написать простой скрипт-счетчик, который принимает в качестве параметра имя .swf-файла.Внутри скрипта вы будете делать все, что захотите, чтобы зарегистрировать его, а затем вернуть правильный тип mime заголовка для SWF, открыть его и вернуться с помощью fopen () и т. Д. Этот метод часто используется для защиты ресурсов, которые необходимодоступ после входа в систему, и у вас не должно быть прямого URL доступа.

Конечно, при обработке файла через php возникают накладные расходы.

Если вы все еще хотите сделать что-то подобное, выпросто нужно создать правило перезаписи, которое находит все файлы, заканчивающиеся на .swf, и перенаправляет их в ваш скрипт вместе с вашим параметром url на основе исходного имени .swf.

1 голос
/ 24 июля 2011

Это не относится к .htaccess, потому что я не думаю, что вы хотите сделать это возможно с .htaccess (но не цитируйте меня по этому поводу)

Вы можете сделать PHPстраница вроде этого:

<?php

header('Content-type: application/x-shockwave-flash');    
$content = file_get_contents('swffile.swf');
echo $content;

// Stat tracking code here 

?>

Тогда вы можете отправлять людей прямо на нее, и она будет действовать как файл .swf.Поскольку вы будете делать много вызовов для file_get_contents('swffile.swf');, который читает файл жесткого диска, вы, вероятно, также захотите посмотреть что-то вроде PHP Memcache , чтобы вы могли кэшировать содержимое вашей.swf файл в оперативной памяти вашего сервера и значительно ускорит время запроса:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...