Tengo un sitio web que reproduce mp3 en un reproductor flash. Si un usuario hace clic en "reproducir", el reproductor flash descarga automáticamente un mp3 y comienza a reproducirlo.
¿Existe una manera fácil de rastrear cuántas veces se ha descargado un clip de canción en particular (o cualquier archivo binario)?
¿El enlace de reproducción es un enlace al archivo mp3 real o a algún código javascript que muestra un reproductor?
Si es lo último, puede agregar fácilmente su propio código de registro allí para rastrear el número de visitas.
Si es lo primero, necesitará algo que pueda rastrear el registro del servidor web y hacer esa distinción. Mi plan de alojamiento viene con Webalizer, que lo hace muy bien.
Es un código javascript que responde a eso.
Sin embargo, sería bueno saber cómo realizar un seguimiento de las descargas utilizando el otro método (sin cambiar de host).
$_REQUEST['file']
) con una lista blanca de nombres de archivo conocidos. Por ejemplo, una lista de todos los archivos en el directorio donde almacena sus archivos. Asegúrese de usar solo ese directorio para almacenar archivos que desea que se puedan descargar ...Utilice sus archivos de registro httpd. Instale http://awstats.sourceforge.net/
fuente
Utilice bash:
grep mp3 /var/log/httpd/access_log | wc
fuente
Si su canción / archivo binario fue servido por Apache, puede fácilmente grep el access_log para averiguar el número de descargas. Un simple script post-logrotate puede hacer grep de los registros y mantener sus estadísticas de conteo en una base de datos. Esto tiene la ventaja de rendimiento al no estar en la ruta del código de solicitud en vivo. Hacer cosas no críticas, como estadísticas sin conexión, es una buena idea para escalar su sitio web a una gran cantidad de usuarios.
fuente
Incluso podría configurar una directiva Apache .htaccess que convierta las solicitudes * .mp3 en la cadena de consulta con la que está trabajando dubayou. Podría ser una forma elegante de mantener la solicitud directa y aún poder incorporar la función de registro en la respuesta.
fuente
¿El enlace de reproducción es un enlace al archivo mp3 real o a algún código javascript que muestra un reproductor?
Si es lo último, puede agregar fácilmente su propio código de registro allí para rastrear el número de visitas.
Si es lo primero, necesitará algo que pueda rastrear el registro del servidor web y hacer esa distinción. Mi plan de alojamiento viene con webalizer, que lo hace muy bien.
fuente
¿Existe una base de datos para su biblioteca de música? Si hay algún código de servidor que se ejecuta al descargar el mp3, puede agregar código adicional allí para incrementar el recuento de reproducción. También puede hacer que javascript haga una segunda solicitud para incrementar el recuento de reproducciones, pero esto podría llevar a que personas / robots incrementen falsamente los recuentos.
Solía trabajar para un sitio de radio por Internet y usábamos tablas separadas para registrar el tiempo que se tocaba cada canción. Nuestras transmisiones funcionaban con un script de perl que ejecutaba icecast, por lo que activábamos una solicitud de base de datos cada vez que comenzaba a reproducirse una nueva pista. Luego, para calcular el recuento de reproducción, ejecutaríamos una consulta para contar cuántas veces la identificación de una canción estaba en el registro de reproducción.
fuente
El problema que tuve con cosas como AWStats / leer los registros del servidor web es que las descargas grandes a menudo se pueden dividir en fragmentos de datos dentro de los registros. Esto dificulta bastante la conciliación del número exacto de descargas.
Sugeriría el seguimiento de eventos de Google Analytics , ya que se registrará una vez por clic en un enlace de descarga.
fuente