php - titel - title tag länge 2018




Wie verfolge ich Dateidownloads? (6)

Benutze bash:

grep mp3 /var/log/httpd/access_log | wc

Ich habe eine Website, auf der MP3s in einem Flash-Player abgespielt werden. Wenn ein Benutzer auf "Wiedergabe" klickt, lädt der Flash-Player automatisch eine MP3-Datei herunter und beginnt mit der Wiedergabe.

Gibt es eine einfache Möglichkeit, zu verfolgen, wie oft ein bestimmter Song-Clip (oder eine Binärdatei) heruntergeladen wurde?

Ist der Wiedergabelink ein Link zur eigentlichen MP3-Datei oder zu einem JavaScript-Code, der einen Player aufruft?

In letzterem Fall können Sie einfach Ihren eigenen Protokollierungscode hinzufügen, um die Anzahl der Treffer zu verfolgen.

In diesem Fall benötigen Sie etwas, das das Webserverprotokoll selbst nachverfolgen und diese Unterscheidung vornehmen kann. Mein Hosting-Plan ist mit Webalizer ausgestattet, was sehr gut funktioniert.

Es ist ein Javascript-Code, der das beantwortet.

Es wäre jedoch schön zu wissen, wie man Downloads mit der anderen Methode verfolgt (ohne den Host zu wechseln).


Das Lustige ist, dass ich vor 2 Tagen eine PHP-Mediengalerie für all meine Musik geschrieben habe. Ich hatte ein ähnliches Problem. Ich benutze http://musicplayer.sourceforge.net/ für den Player. Und die Wiedergabeliste wird über PHP erstellt. Alle Musikanfragen gehen dahin ein Skript namens xfer.php? File = WHATEVER

$filename = base64_url_decode($_REQUEST['file']);
header("Cache-Control: public");
header('Content-disposition: attachment; filename='.basename($filename));
header("Content-Transfer-Encoding: binary");
header('Content-Length: '. filesize($filename));

//  Put either file counting code here. either a db or static files

//

readfile($filename);  //and spit the user the file


function base64_url_decode($input) {
    return base64_decode(strtr($input, '-_,', '+/='));
}

Und wenn Sie Dateien aufrufen, verwenden Sie Folgendes:

function base64_url_encode($input) {
     return strtr(base64_encode($input), '+/=', '-_,');
}

http://us.php.net/manual/en/function.base64-encode.php

Wenn Sie Javascript oder einen Flash-Player (z. B. JW-Player) verwenden, für den der eigentliche Link eine MP3-Datei oder etwas anderes sein muss, können Sie den Text "& type = .mp3" anhängen, sodass die letzte linke in etwa wie folgt aussieht: "www .example.com / xfer.php? file = 34842ffjfjxfh & type = .mp3 ". Auf diese Weise sieht es so aus, als würde es mit einer MP3-Erweiterung enden, ohne die Dateilink zu beeinflussen.


Gibt es eine Datenbank für Ihre Musikbibliothek? Wenn beim Herunterladen der MP3-Datei ein Servercode ausgeführt wird, können Sie dort zusätzlichen Code hinzufügen, um die Anzahl der Wiedergaben zu erhöhen. Sie können auch eine zweite Anfrage mit Javascript stellen, um die Anzahl der Wiedergaben zu erhöhen. Dies kann jedoch dazu führen, dass die Anzahl der Personen / Roboter fälschlicherweise erhöht wird.

Ich habe für eine Internetradio-Site gearbeitet und wir haben separate Tabellen verwendet, um die Zeit zu verfolgen, zu der jedes Lied gespielt wurde. Unsere Streams wurden von einem Perl-Skript angetrieben, das Icecast ausführt. Daher haben wir jedes Mal eine Datenbankanforderung ausgelöst, wenn ein neuer Titel abgespielt wurde. Um dann die Anzahl der Wiedergaben zu berechnen, würden wir eine Abfrage ausführen, um zu zählen, wie oft sich die ID eines Songs im Wiedergabelog befand.


Ist der Wiedergabelink ein Link zur eigentlichen MP3-Datei oder zu einem JavaScript-Code, der einen Player aufruft?

In letzterem Fall können Sie einfach Ihren eigenen Protokollierungscode hinzufügen, um die Anzahl der Treffer zu verfolgen.

In diesem Fall benötigen Sie etwas, das das Webserverprotokoll selbst nachverfolgen und diese Unterscheidung vornehmen kann. Mein Hosting-Plan kommt mit Webalizer, was das sehr gut macht.



Wenn Ihr Song / Ihre Binärdatei von Apache bereitgestellt wurde, können Sie die Anzahl der Downloads einfach im access_log ermitteln. Ein einfaches Post-Logrotate-Skript kann die Protokolle durchsuchen und Ihre Zählstatistiken in einer Datenbank verwalten. Dies hat den Leistungsvorteil, dass Sie sich nicht in Ihrem Live-Anforderungscodepfad befinden. Es ist eine gute Idee, unkritische Dinge wie Statistiken offline zu machen, um Ihre Website auf eine große Anzahl von Benutzern zu skalieren.





analytics