web-dev-qa-db-fra.com

Est-il possible de suivre les redirections vers des sites externes à partir de nos sous-domaines?

J'ai une poignée de sous-domaines configurés en tant que redirections, car nous les utilisons pour les codes QR.

Je veux pouvoir suivre les redirections de code QR (qui sont déjà configurées et imprimées afin de ne pas les changer à ce stade) et voir l'efficacité de chacune d'elles.

Voici deux exemples: http://qr.glorkianwarrior.com et http://ad.glorkianwarrior.com sont configurés pour être transférés sur notre page iTunes (plus tard année où il peut transférer vers Google Play ou une page de destination spécifique), mon serveur est-il en mesure de suivre la redirection du sous-domaine vers iTunes et de voir d’où provient en premier le trafic?

Les redirections sont configurées via cPanel et utilisent actuellement des sous-domaines.

Edit: De la recherche que j'ai vu je ne peux pas suivre un 301 directement. Si je redirige vers une page interne puis que je fais une redirection temporisée vers le lien iTunes, combien de temps faudra-t-il au script de suivi pour suivre un hit?

3
ChaBuku Bakke

Vous pouvez le faire avec PHP et Google Analytics.

Pour chaque sous-domaine, exécutez un fichier index.php qui enverra les données à Google Analytics, puis fournissez une réponse de redirection d'en-tête pour envoyer le visiteur à iTunes. Google enregistrera les événements dans l'analyse et l'utilisateur ne verra rien de différent.

Voici un exemple de redirection PHP:

https://stackoverflow.com/questions/768431/how-to-make-a-redirect-in-php

Voici la documentation relative à l'API du protocole de mesure de Google:

https://developers.google.com/analytics/devguides/collection/protocol/v1/

Vous pouvez obtenir des détails sur l'API ici:

https://developers.google.com/analytics/devguides/collection/protocol/v1/reference

Il existe une bibliothèque PHP sur GitHub pour cela:

https://github.com/google/google-api-php-client

3
Reactgular

Si je redirige vers une page interne puis que je fais une redirection temporisée vers le lien iTunes, combien de temps faudra-t-il au script de suivi pour suivre un hit?

Il existe un meilleur moyen de le faire que d’attendre un laps de temps précis. Le suivi des événements de Google Analytics prend en charge une fonction de "rappel" que vous pouvez transmettre. Vous pouvez créer une telle fonction de rappel qui modifie l'URL et l'exécute dès que le suivi Google Analytics est terminé.

J'ai mis en œuvre quelque chose comme ceci et utilise la fonction suivante qui entoure Universal Analytics:

function logeventga(category, action, label, value, callback, nonAction){
    var event = {
        'eventCategory': category,
        'eventAction': action
    };
    if (label) event['eventLabel'] = label;
    if (value) event['eventValue'] = value;
    if (callback) event['hitCallback'] = callback;
    if (nonAction) event['nonInteraction'] = 1;
    if (typeof ga == 'function' && ga.hasOwnProperty('loaded') && ga.loaded === true) {
        ga('send', 'event', event);
    } else if (callback) {
        callback.call();
    }
}

Cette méthode vérifie si Google Analytics est chargé afin que la fonction de rappel soit exécutée même si le programme d'analyse js est bloqué par AdBlock.

Vous pouvez l'utiliser comme ceci appelé depuis l'événement onload:

logeventga('redirect', 'redirect', href, null, function(){
    window.location.href = href;
});

Vous voudrez probablement également que votre extrait de code Google Analytics NE traque PAS une "consultation de page" sur cette page particulière.

L'inconvénient de cette approche est que la redirection ne fonctionnera pas pour les navigateurs et les robots d'exploration de sites Web non activés par JavaScript. Pour que cela fonctionne mieux pour les navigateurs qui effectueraient une méta-actualisation après quelques secondes si JavaScript ne s'exécutait pas pour une raison quelconque. Le suivi Google Analytics s'exécute généralement en quelques centaines de millisecondes.

<meta http-equiv="refresh" content="5; url=http://example.com/">
1