Google fontovi i DSGVO: zašto Vaša web stranica može dobiti opomenu
Prvo kratak odgovor: problem nisu sami fontovi, nego kako se učitavaju. Ako Vaša web stranica pri otvaranju učitava font direktno s vanjskog servera, pri tome se IP adresa svakog posjetioca prenosi na taj server — po pravilu bez saglasnosti. Upravo to se po DSGVO (njemačka uredba o zaštiti podataka, GDPR) smatra spornim i izazvalo je cijeli talas Abmahnung-pisama — Abmahnung je u Njemačkoj formalna pravna opomena, često sa zahtjevom za naknadu štete i advokatske troškove.
Dobra vijest: ne morate mijenjati svoje fontove. Morate ih samo isporučivati s vlastitog servera umjesto s tuđeg. To je gotovo za pola sata i u ovom tekstu objašnjeno korak po korak.
Napomena: ovaj tekst je tehnička i opšta orijentacija, a ne pravni savjet. Kod konkretnih spornih slučajeva — npr. ako je pismo već stiglo — obratite se advokatskoj kancelariji specijalizovanoj za IT pravo.
Samostalni test od 2 minute
Prije nego što išta mijenjate, provjerite jeste li uopšte pogođeni. Postoje dva brza puta:
Put 1 — pretražiti izvorni kod. Otvorite svoju početnu stranicu u pretraživaču i pritisnite Ctrl + U (Windows) odnosno Cmd + Alt + U (Mac). Pojavljuje se izvorni kod stranice. Potražite s Ctrl + F ove dvije adrese:
fonts.googleapis.comfonts.gstatic.com
Ako pretraživač nađe pogodak, Vaša stranica učitava fontove s vanjskog servera — pogođeni ste.
Put 2 — kartica „Network" u alatima za developere. Pritisnite F12, pređite na karticu „Network" i ponovo učitajte stranicu. Filtrirajte po „font" ili ukucajte ime domene u polje za pretragu. Vidite li zahtjeve prema tuđim serverima koji isporučuju datoteke fontova (.woff2, .ttf), imate svoj odgovor.
Važno: test mora ići na stranici koja je uživo na internetu, ne samo u lokalnom pregledu. I provjerite više tipova stranica — početnu, jednu podstranicu, blog. Neki Baukasten-sistemi (servisi za samostalno sklapanje stranice) i dodaci za teme učitavaju fontove samo na određenim mjestima.
Zašto je to pravno osjetljivo
Okidač debate bila je često citirana presuda suda Landgericht München I (zemaljski sud u Minhenu) iz januara 2022. Sud je odlučio da dinamičko učitavanje Google fontova s vanjskog servera prenosi IP adresu korisnika bez njegove saglasnosti i time krši pravo na informaciono samoodređenje. Tužiteljici odnosno tužiocu dosuđena je naknada štete od 100 eura.
To je provjerljiva činjenica. Kako je išlo dalje, više je stvar procjene: nakon presude uslijedila su masovna Abmahnung-pisma, često slana u velikom broju od pojedinaca ili advokatskih kancelarija, s paušalnim zahtjevima za naknadu štete i advokatske troškove. Dio toga drugi sudovi su kasnije ocijenili kao zloupotrebu prava, jer je vidljivo ciljao na masu i prihod. Ali to ne uklanja ni osnovni problem ni nesigurnost za vlasnike web stranica.
Praktično to znači: pravna situacija je u detaljima sporna, tehnički rizik nije. Ko ugasi prenos IP adrese, jednostavno je uklonio tačku napada — i ne mora više razmišljati o ishodu budućih postupaka.
Rješenje: hostovati fontove lokalno
Srž je jednostavna: jednom preuzmete datoteke fontova, stavite ih na vlastiti server i uključite ih preko CSS-a. Nakon toga vanjski poziv otpada — IP posjetilaca više ne odlazi trećima. Gotovo svi uobičajeni web fontovi objavljeni su pod slobodnim licencama (OFL, Apache) koje upravo ovakvo samostalno hostovanje izričito dozvoljavaju.
Korak 1 — nabaviti datoteke fontova. Preuzmite potrebne rezove u modernom formatu .woff2. Uzmite samo debljine koje stvarno koristite (npr. Regular 400 i Bold 700) — svaka dodatna datoteka košta vrijeme učitavanja.
Korak 2 — odložiti datoteke. Stavite datoteke u folder na svom serveru, npr. /fonts/.
Korak 3 — uključiti preko @font-face. Dopunite svoj stylesheet jednim blokom po rezu:
@font-face {
font-family: 'Hausschrift';
src: url('/fonts/hausschrift-regular.woff2') format('woff2');
font-weight: 400;
font-style: normal;
font-display: swap;
}
@font-face {
font-family: 'Hausschrift';
src: url('/fonts/hausschrift-bold.woff2') format('woff2');
font-weight: 700;
font-style: normal;
font-display: swap;
}
Zatim font koristite kao i do sada, na primjer:
body { font-family: 'Hausschrift', system-ui, sans-serif; }
font-display: swap; osigurava da tekst odmah bude vidljiv u zamjenskom fontu, a ne nevidljiv dok se datoteka ne učita.
Korak 4 — ukloniti vanjski poziv. Potražite u HTML-u red koji upućuje na fonts.googleapis.com — najčešće <link>-tag u zaglavlju — i obrišite ga. Isto važi za @import-redove s tom adresom u CSS-u. Ako se to ne ukloni, stranica učitava font duplo: jednom lokalno i dalje jednom izvana.
Korak 5 — provjeriti. Ponovite test od 2 minute odozgo. Nema više pogodaka na te dvije domene? Onda je dio s fontovima riješen.
Ko radi s WordPressom, Baukastenom ili gotovom temom, vanjski poziv često neće naći u vlastitom HTML-u, nego duboko u temi ili u nekom dodatku. Mnoge teme u međuvremenu nude postavku tipa „učitaj fontove lokalno" ili „isključi Google fontove". Provjerite to — i nakon toga testirajte ponovo, jer ne drži svaka postavka ono što obećava.
Misliti dalje: ne samo fontovi
Fontovi su najpoznatiji slučaj, ali ne i jedini. Svaki element koji pri otvaranju stranice nešto učitava s tuđeg servera pri tome prenosi IP posjetioca. Provjerite u kartici „Network" koje tuđe domene Vaša stranica još kontaktira. Tipični kandidati:
- Vanjske skript-biblioteke (npr. JavaScript-frameworci ili kolekcije ikona koje se učitavaju s CDN-a) — gotovo uvijek se također mogu hostovati lokalno.
- Ugrađene karte. Servis karata ugrađen direktno u izgled stranice učitava se zajedno s njom i šalje IP dalje. Alternativa: statična slika karte s linkom, ili učitavanje karte tek nakon klika.
- Ugrađeni videi. Prozor plejera neke video platforme često uspostavlja vezu već pri otvaranju stranice. Bolje: učitati tek na klik (sličica umjesto živog plejera).
- Widgeti društvenih mreža i like-dugmad, ugrađeni kao gotov kod.
- Vanjski servisi za statistiku i praćenje koji se pokreću prije saglasnosti.
Osnovno pravilo: sve što je potrebno za osnovni prikaz (kao fontovi i skripte) ide na vlastiti server. Sve što daje podatke posjetilaca trećima (karte, videi, praćenje) treba se učitavati tek nakon aktivne saglasnosti — sam cookie-banner nije dovoljan ako se sadržaji učitavaju već prije toga.
Kod nas je to standardno stanje
Mi web stranice gradimo principijelno tako da se fontovi isporučuju lokalno — nijedan jedini vanjski font-zahtjev pri otvaranju stranice, ni u jednom projektu. To kod nas nije dodatak koji se doručuje, nego polazno stanje. Ista logika važi za skripte i ugrađene sadržaje: šta bi podatke posjetilaca davalo tuđim serverima, ili se hostuje samostalno ili se uopšte ne ugrađuje naslijepo.
Ako želite vidjeti kako to izgleda u stvarnim projektima, možete u Showroomu sami napraviti test: otvoriti stranicu, F12, kartica „Network" — i pogledati koje se tuđe domene kontaktiraju. Poenta portfolija i jeste u tome da se može provjeriti.
Ko ionako upravo razmišlja o novoj ili prerađenoj web stranici: u tekstovima koliko web stranica za malu firmu stvarno košta i zašto se Vaša firma ne pojavljuje na Googleu bavimo se budžetom i vidljivošću. A ako niste sigurni je li Vaša postojeća stranica čista, pogledajte jednostavno Showroom i javite se — kratak pogled u karticu „Network" već govori mnogo.
Česta pitanja
Je li sada zabranjeno koristiti Google fontove?
Ne. Sporno je samo nenajavljeno učitavanje s tuđeg servera, jer se pri tome bez pitanja prenosi IP posjetioca. Potpuno iste fontove smijete koristiti i dalje ako datoteke hostujete sami. Licence većine web fontova to izričito dozvoljavaju.
Hoću li stvarno dobiti Abmahnung ako ništa ne promijenim?
Sigurno nije — mnoga masovna pisma sudovi su ocijenili kao zloupotrebu prava, i neće svaka stranica uopšte biti provjerena. Sigurno je samo jedno: dok prenos IP adrese traje, tačka napada postoji. Ukloniti je košta malo vremena i skida temu trajno sa stola.
Je li cookie-banner dovoljan da riješi problem?
U većini slučajeva nije. Fontovi i skripte tipično se učitavaju odmah pri otvaranju stranice — dakle prije nego što je posjetilac u banneru išta mogao kliknuti. Prenos bi se tada već dogodio. Djelotvorno je samo tehnički ugasiti vanjski poziv (lokalno hostovanje) ili ga stvarno pokretati tek nakon saglasnosti.
Imam stranicu na Baukastenu ili WordPressu — moram li svejedno nešto uraditi?
Da, često upravo tada. Mnoge teme i dodaci standardno učitavaju fontove izvana, a da se to u vlastitom HTML-u ne vidi. Uradite samostalni test i potražite u postavkama opciju tipa „učitaj fontove lokalno". Nakon toga obavezno ponovo provjerite je li vanjski poziv stvarno nestao.
Po čemu nakon prelaska prepoznajem da je sve čisto?
Po istom testu od 2 minute: izvorni kod i kartica „Network" ne smiju više pokazivati pogotke na fonts.googleapis.com ili fonts.gstatic.com — a u kartici „Network" datoteke fontova sada treba da dolaze s Vaše vlastite domene.