FLoC oder Federated Learning of Cohorts ist eine kürzlich von Google eingeführte Methode, um Cookies von Drittanbietern durch die eigene, in den Browser integrierte Benutzerüberwachung zu ersetzen.
Dabei handelt es sich im Wesentlichen um einen eingebauten Chrome-Browser. Datenschutzbewusste können zu einem anderen , datenschutzfreundlicher Browser wechseln, um zu vermeiden, dass sie verfolgt werden. Aber auch Website-Besitzer können sich gegen FLoC entscheiden, indem sie einige einfache Änderungen im HTTP-Antwort-Header ihres Webservers vornehmen
Ich empfehle einen Blick auf diese Google- und GitHub-Seite, um mehr über FLoC zu erfahren
In diesem Artikel werden wir uns mit den Möglichkeiten befassen, die Sie als Website-Besitzer nutzen können, um FLoC durch einfache Konfigurationsänderungen in Webservern zu deaktivieren
Benutzerdefinierter HTTP-Header
Ein benutzerdefinierter HTTP-Antwort-Header stellt sicher, dass der Website-Besitzer FLoC abmeldet. Der Antwort-Header hierfür lautet
Permissions-Policy: interest-cohort=()
Lassen Sie uns die Implementierung sehen
NGINX
Bei NGINX müssen Sie die Direktive add_header
in jedem Serverblock (wenn eine einzige Konfigurationsdatei für mehrere Websites verwendet wird) oder in jeder einzelnen Serverkonfigurationsdatei hinzufügen
server {
location / {
add_header Permissions-Policy interest-cohort=();
.
..
}
}
Und dann starten Sie den NGINX-Dienst neu
systemctl restart nginx
Alternativ können Sie auch einen anderen Ansatz verfolgen, indem Sie das Folgende in den http-Block
einfügen
add_header Permissions-Policy "interest-cohort=()"
In den HTTP-Antwort-Headern würde es dann wie folgt aussehen
HTTP/1.1 200 OK
Server: nginx/1.14.1
Datum: Fri, 30 Apr 2021 06:37:02 GMT
Content-Type: text/html
Content-Length: 4057
Last-Modified: Mon, 07 Oct 2019 21:16:24 GMT
Connection: keep-alive
ETag: "5d9bab28-fd9"
Permissions-Policy: interest-cohort=()
Accept-Ranges: bytes
Apache
Für den Apache-Webserver fügen Sie den benutzerdefinierten Header in Ihrer Konfigurationsdatei wie folgt hinzu
<IfModule mod_headers.c>
Header immer gesetzt Permissions-Policy: interest-cohort=()
</IfModule>
Starten Sie dann den Apache neu, damit er wirksam wird
systemctl restart httpd
Sie erhalten dann eine Ausgabe wie unten
HTTP/1.1 200 OK
Datum: Fri, 30 Apr 2021 06:49:58 GMT
Server: Apache/2.4.37 (centos)
Permissions-Policy: interest-cohort=()
Last-Modified: Thu, 29 Apr 2021 06:40:41 GMT
ETag: "3-5c116c620a6f1"
Accept-Ranges: bytes
Content-Length: 3
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Inhalt-Typ: text/html; charset=UTF-8
WordPress
Wenn Ihr WordPress ein Gemeinsames Hosting ist, haben Sie nicht die Möglichkeit, die Konfigurationsdatei des Webservers zu bearbeiten. Aber die gute Nachricht ist, dass Sie die Header in der Codebasis über Hooks einstellen können. Fügen Sie in der function.php
Ihres aktiven Themas die folgenden Zeilen am Ende ein
add_filter(
'wp_headers',
function ( $headers ) {
if ( empty( $headers['Permissions-Policy'] ) ) {
$headers['Permissions-Policy'] = 'interest-cohort=()';
} elseif (
! empty( $headers['Permissions-Policy'] )
&& false === strpos( $headers['Permissions-Policy'], 'interest-cohort' )
) {
$headers['Permissions-Policy'] .= ', interest-cohort=()';
}
return $headers;
}
)
Speichern Sie die Datei im WordPress-Admin-Backend und der Header sollte bei allen neuen Anfragen eingefügt werden. Stellen Sie sicher, dass Sie den Cache in seinem Mechanismus/Plugin löschen, damit der neue Header wirksam wird.
Hier sehen Sie, wie die Ausgabe meiner Implementierung aussieht
cache-control: no-cache, must-revalidate, max-age=0
content-encoding: br
content-type: text/html; charset=UTF-8
date: Fri, 30 Apr 2021 13:40:14 GMT
expires: Wed, 11 Jan 1984 05:00:00 GMT
host-header: 6b7412fb82ca5edfd0917e3957f05d89
link: <https://geekflaresg.com/wp-json/>; rel="https://api.w.org/"
permissions-policy: interest-cohort=()
server: nginx
set-cookie: wpSGCacheBypass=1; expires=Fri, 30-Apr-2021 15:20:14 GMT; Max-Age=6000; path=/; HttpOnly; SameSite=Lax
vary: Accept-Encoding
x-cache-enabled: True
x-httpd: 1
x-proxy-cache: BYPASS
x-proxy-cache-info: 0 NC:100000 UP:SKIP_CACHE_SET_COOKIE
Eine andere Eine einfache Lösung wäre die Verwendung des HTTP-Header-Plugins
HAProxy
HAProxy erlaubt das Hinzufügen der Header-Direktive in seiner Konfiguration. Fügen Sie im Abschnitt Frontend
, Listen
oder Backend
der Konfiguration (je nachdem, was zutrifft) die folgende Anweisung hinzu
http-response set-header Permissions-Policy interest-cohort=()
Stellen Sie sicher, dass Sie Ihren HAProxy-Server wie folgt neu starten
systemctl restart haproxy
Dadurch wird der Header für alle neuen Anfragen wirksam
Traefik
Traefik, das hauptsächlich als Ingress-Controller für die containerisiert Umgebung verwendet wird, kann so konfiguriert werden, dass FLoC ähnlich wie bei den oben genannten Servern deaktiviert wird. Fügen Sie in Ihrer Datei traefik.toml
die folgenden Zeilen hinzu
[http.middlewares]
[http.middlewares.floc.headers]
[http.middlewares.floc.headers.customResponseHeaders]
Permissions-Policy = "interest-cohort=()"
Oder für eine YAML-basierte Konfiguration(traefik.yml
) verwenden Sie
http:
middlewares:
floc:
headers:
customResponseHeaders:
Permissions-Policy: "interest-cohort=()"
Oder wenn Sie Traefik mit Docker verwenden, ändern Sie das Label traefik in der Datei docker-compose.yml
wie folgt
labels:
- "traefik.http.middlewares.floc.headers.customresponseheaders.Permissions-Policy=interest-cohort=()"
Zusammenfassung
FLoC ist ein neuer Überwachungsmechanismus. Wenn Sie keine interessenbezogene Werbung auf Ihrer Website anzeigen möchten, können Sie sich dagegen entscheiden, indem Sie wie oben beschrieben Header für die Erlaubnispolitik implementieren. Als Nutzer können Sie auf dieser speziellen Seite(Bin ich FloCed?) nachsehen, ob Sie mit FLoC verfolgt werden.