Cos'è fbclid? il nuovo parametro facebook [chiuso]


87

Da due giorni ho notato che all'URL che pubblico su Facebook c'è un parametro aggiunto:
?fbclid=uFCrBkUgEvKg...
per essere più precisi qualcosa del tipo:http://example.com?fbclid=uFCrBkUgEvKg...

Qualcuno sa cosa fa questo parametro?
A cosa serve e a cosa servono gli sviluppatori?

Grazie per i tuoi commenti.


5
A me sembra che Facebook stia cercando di aggirare le leggi sui cookie ... A parte questo ... sembra che nessuno abbia trovato alcuna documentazione su questo tracciante ...
Antony Gibbs

20
Questo comportamento è così fastidioso, fa sì che tutto il traffico di riferimento venga visualizzato come URL univoco nei miei rapporti di analisi poiché il parametro della query è diverso per utente.
Brian Surowiec

5
C'è qualche discussione su fbclid in questo thread HN (molti link informativi sepolti lì da qualche parte): news.ycombinator.com/item?id=18275061
ahiijny

9
Ho scritto un'estensione di Chrome che lo rimuove. chrome.google.com/webstore/detail/…
R OMS

1
Questa domanda è chiusa (grr) ma una cosa che nessun altro ha menzionato è che potresti usarla tu stesso per tenere traccia dei clic unici e incrociarli con le statistiche fornite da Facebook. Puoi usarlo per vedere quanti clic univoci (a pagamento) ottieni effettivamente comportano il caricamento completo della pagina sul tuo sito. (Questo non sarebbe qualcosa che tutti vorrebbero fare, ma può aiutare nell'ottimizzazione del sito e nel caricamento della pagina).
Simon_Weaver

Risposte:


31

Lo so gclid, è l'abbreviazione di ( G oogle Cl ick Id entifier)
È un parametro di monitoraggio univoco che Google utilizza per trasferire le informazioni tra il tuo account Google Ads e il tuo account Google Analytics.

Facebook deve fare la stessa cosa o qualcosa di simile fbclidper migliorare i sistemi di analisi del monitoraggio.


32
durante l'interruzione del caching in tutto il mondo: D allo stesso tempo. per molte persone
Luka

5
@ Luka - puoi ancora usare la cache. Hai solo bisogno di escludere i parametri fbclid, gclid e utm dalla cache :) Molte soluzioni supportano questo.
LucasRolff

2
Alcuni plugin di caching non hanno questa opzione e quello che fanno è in realtà per ogni URL creare una pagina di cache separata che equivale a nessuna memorizzazione nella cache (perché fbclid non è mai lo stesso). L'implementazione di Nginx per rimuoverlo è la migliore. gist.github.com/lynt-smitka/…
Luka

6
Se lo scopo di questa query è tracciare i visitatori, avrebbe dovuto essere indicato nei documenti o nell'informativa sulla privacy. Sembra che fblcid sia unico per utente. Se è davvero così, c'è un enorme problema di privacy e una violazione del GDPR.
fat_mike

18

Questo mi ha aiutato: https://greasyfork.org/en/forum/discussion/44083/fbclid-tracking-parameter-attached-by-facebook

Ecco una citazione dal link:

Inserisci questo codice nel tuo file .htaccess:

RewriteCond %{QUERY_STRING} "fbclid=" [NC]
RewriteRule (.*) /$1? [R=301,L]

Se lavori in WordPress:

RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} "fbclid=" [NC]
RewriteRule (.*) /$1? [R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]

2
Chi non funziona le opzioni di cui sopra prova ad utilizzare questo:RewriteCond %{QUERY_STRING} ^(.*)&?fbclid=[^&]+&?(.*)$ [NC] RewriteRule ^(.*)$ /$1?%1%2 [R=301,L]
Rafael Dorado

7
La soluzione in questa risposta sovrascriverà tutti i parametri della query, ad esempio tutto ciò che segue "?" verrà buttato via. Ciò potrebbe interrompere alcune funzionalità delle pagine Web che utilizzano parametri di query. Quindi, assicurati che questo sia quello che vuoi. Inoltre, guarda le risposte su stackoverflow / serverfault per sapere come rimuovere un parametro di query specifico.
Sybille Peters

1
grazie per salvare la mia giornata
sayalok

2
Mi fa pensare tutti i server web dovrebbero riscrivere a qualcosa di casuale e inoltrare una nuova richiesta ai server di FB;)
youcantryreachingme

13

Un altro approccio su come rimuovere questo parametro (in modo che gli utenti possano condividere il tuo URL senza rimuoverlo manualmente) consiste nell'usare JavaScript e history.replaceState.

Tutti i riconoscimenti vanno all'autore originale - https://www.michalspacek.cz/zmena-url-a-skryvani-fbclid-pomoci-javascriptu

Codice dal collegamento:

(function() {
        var param = 'fbclid';
        if (location.search.indexOf(param + '=') !== -1) {
                var replace = '';
                try {
                        var url = new URL(location);
                        url.searchParams.delete(param);
                        replace = url.href;
                } catch (ex) {
                        var regExp = new RegExp('[?&]' + param + '=.*$');
                        replace = location.search.replace(regExp, '');
                        replace = location.pathname + replace + location.hash;
                }
                history.replaceState(null, '', replace);
        }
})();

una riga per rimuovere tutto: history.replaceState (null, '', location.origin + location.pathname)
Zibri

12

A quanto ho capito, il parametro è un mezzo per tracciare il visitatore del sito in modo che se il tuo sito include pubblicità da Facebook, possono personalizzarlo per adattarlo alle abitudini di navigazione registrate del visitatore.

La mod_rewrite soluzione Apache sopra è problematica perché rimuove l'intera stringa di query. Se l'URL aveva già una stringa di query, verrà interrotta. Per rimuovere solo il fbclidparametro, è utile notare che Facebook lo aggiunge sempre a un URL, quindi è sempre l'ultimo. Questo semplifica mod_rewriteun po ' il codice. Questo è ciò che faccio:

# Strip Facebook spyware tokens
RewriteCond %{REQUEST_METHOD} =GET [NC,OR]
RewriteCond %{REQUEST_METHOD} =HEAD [NC]
RewriteCond %{QUERY_STRING} ^(.*)&?fbclid=[^&]+$ [NC]
RewriteRule ^/?(.*)$ /$1?%1 [NE,L,R=301,E=limitcache:1]
Header always set Cache-Control "max-age=604800" env=limitcache

Il E=limitcache:1flag e la Headerdirettiva servono a limitare il tempo di memorizzazione nella cache del reindirizzamento 301. Per impostazione predefinita, molti browser lo memorizzano nella cache letteralmente per sempre . Questo lo riduce a una settimana (o 604.800 secondi). Potrei essere in minoranza nel pensare questo, ma mi sembra una buona pratica. Non so per quanto tempo i fbclidtoken persistono, ma se durano a lungo, significa che Facebook indirizzerà i visitatori agli stessi URL per molto tempo e se mai vorrai supportare gli annunci mirati di Facebook, o se iniziano utilizzando fbclidper altre funzionalità di cui hai bisogno, potresti scoprire che questi reindirizzamenti memorizzati nella cache permanente tornano a mordere. Ma se sei disposto a rischiare, puoi eliminare sia la Headerdirettiva che il E=limitcache:1flag.

I due test %{REQUEST_METHOD}servono per impedire ad Apache di reindirizzare le richieste POST (o richieste più esoteriche come PUT o DELETE, se pertinenti). La maggior parte dei browser cambia la richiesta in una richiesta GET su un reindirizzamento 301 o 302, che è esplicitamente consentito dalla RFC 7231 . C'è un nuovo codice di reindirizzamento 308 che non deve avere il suo metodo riscritto, ma sfortunatamente non è supportato da Internet Explorer su Windows 7 (e probabilmente non lo sarà mai).


Non contribuire alla sorveglianza di massa. Rimuovi quella Headerlinea se usi questo, non vorrai usare il file fbclid. Strano che i reindirizzamenti "permanenti" possano avere una data di scadenza, ma questa è la natura organica del web per te. :-)
clacke
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.