Skip to content

Alt om WordPress, webutvikling — og mer til

🚫 Cloudflare email-decode.min.js: hvorfor deaktivere e-postobfuskering og hvordan fjerne skriptet på et minutt

🚫 Cloudflare email-decode.min.js: hvorfor deaktivere e-postobfuskering og hvordan fjerne skriptet på et minutt

Du besøker PageSpeed Insights og ser en ressurs som blokkerer rendering. Du ser nærmere: email-decode.min.js, Cloudflare. «Dette skriptet bremser nettstedet igjen,» tenker du, og går til Google for å finne en løsning.

I april 2026 fikset Cloudflare endelig problemet: de la til attributtet defer, og skriptet sluttet å blokkere rendering. Sak avsluttet, tilsynelatende. Men nei. email-decode.min.js etterlater seg fortsatt fantom-soft 404-feil i Google Search Console, og XOR-chifferet Cloudflare bruker for å «beskytte» adresser kan dekrypteres på sekunder. Ingen reell sikkerhet, ingen rene rapporter.

I praksis har vi støtt på dette skriptet mange ganger under nettstedsrevisjoner: du deaktiverer det på et minutt og får en ren Search Console på kjøpet. La oss se nærmere på hvordan obfuskeringen fungerer, hvorfor skriptet fortsatt skaper problemer, og hvordan du fjerner det, med et alternativ som faktisk skjuler e-post for boter.

💡 Hurtigoversikt:

  • Forstå hvordan Email Address Obfuscation fungerer i Cloudflare og hvorfor email-decode.min.js finnes i utgangspunktet.
  • Utforsk tre grunner til å deaktivere obfuskering etter april 2026-oppdateringen.
  • Deaktiver skriptet steg for steg: dashbord, API, Configuration Rules.
  • Implementer et alternativ med IntersectionObserver og base64, uten eksterne skript eller soft 404-feil.

Hvordan Cloudflare skjuler e-post

Når et nettsted kjører gjennom Cloudflare, aktiverer tjenesten Email Address Obfuscation som standard. Cloudflare skanner HTML-en på sidene, finner alt som ligner en e-postadresse, og erstatter hver adresse med en XOR-kodet heksadesimal streng. For å dekryptere den injiseres email-decode.min.js i den besøkendes nettleser.

PageSpeed Insights-advarsel om e-post-dekoding.min.js-skript

Ideen gir mening: boter ser ikke adresser, det gjør folk. I praksis er det mer komplisert. Frem til april 2026 skadet skriptet åpenlyst ytelsen, og selve beskyttelsen viste seg svakere enn Cloudflare lover.

Tre grunner til å deaktivere email-decode.min.js

April-oppdateringen eliminerte render-blokkering. Men tre problemer gjenstår. Og de er mer alvorlige enn tapte millisekunder.

Soft 404 i Search Console

Cloudflare erstatter e-postadresser med lenker som /cdn-cgi/l/email-protection#[hex]. For Googlebot og andre søkeroboter returnerer disse URL-ene 404. Resultatet: «Soft 404»-feil i Google Search Console. Ahrefs og Screaming Frog flagger dem som ødelagte interne lenker.

Dette er ikke kosmetisk. Dusinvis av fantom-Cloudflare-feil maskerer reelle indekseringsproblemer. Under en teknisk revisjon kaster du bort tid på å filtrere støy i stedet for å finne faktisk ødelagte sider.

XOR-chiffer beskytter ikke

Cloudflare bruker enkelbyte-XOR, der nøkkelen er innebygd direkte i den kodede strengen. Dekrypteringsmekanismen er identisk for alle nettsteder under Cloudflare. En spammer trenger én dekoder, så kan de hente ut adresser fra ethvert nettsted på sekunder.

Spencer Mortensens forskning (2026) testet 25 obfuskeringsmetoder mot over 300 spam-høstere ved hjelp av honeypot-adresser. Selv primitiv CSS display:none viste 100% blokkering. Cloudflares obfuskering beskytter bare mot boter som ikke kan dekode XOR, og de ville uansett ikke samlet inn adresser.

Belastning på hovedtråden på mobil

1,2 KB JavaScript med defer er ikke kritisk for desktop. Men på en billig Android-enhet med belastet prosessor spiser hver lille hovedtråd-oppgave av INP-budsjettet. Hvis du kjemper for de siste 50 ms, er dette skriptet unødvendig.

Deaktivere obfuskering: steg-for-steg-guide

Deaktivering tar et minutt. Velg fremgangsmåten for din dashbordversjon.

Nytt dashbord (Security Settings)

  • Logg inn på Cloudflare-dashbordet.
  • Gå til Security → Settings.
  • Finn bryteren for Email Address Obfuscation.
  • Sett den til Off.

Gammelt dashbord (Scrape Shield)

Hvis kontogrensesnittet ditt ikke er oppdatert ennå:

  • Logg inn på Cloudflare-dashbordet.
  • Åpne Scrape Shield-seksjonen.
  • Finn Email Address Obfuscation og sett bryteren til Off.
Deaktivering av e-postobfuskering i Scrape Shield-delen av Cloudflare-dashbordet

Skriptet forsvinner umiddelbart. email-decode.min.js slutter å bli injisert på alle sidene i sonen.

Via API

For automatisering eller bulkadministrasjon, send en PATCH-forespørsel til Cloudflare API-et:

1curl -X PATCH "https://api.cloudflare.com/client/v4/zones/<ZONE_ID>/settings/email_obfuscation" \
2 -H "Authorization: Bearer <API_TOKEN>" \
3 -H "Content-Type: application/json" \
4 --data '{"value":"off"}'

Bytt ut din Zone ID og API-token med tillatelse til å redigere soneinnstillinger.

Selektiv deaktivering via Configuration Rules

Trenger du obfuskering på kontaktsiden, men ikke på landingssider? Bruk Configuration Rules:

  • Gå til Rules → Configuration Rules.
  • Opprett en regel med kriterier: vertsnavn, URL-sti eller begge deler.
  • Legg til innstillingen Email Obfuscation og sett den til Off.
  • Bruk.

Du kan også ekskludere enkeltadresser i HTML ved å pakke dem inn i kommentarer:

1<!--email_off-->[email protected]<!--/email_off-->

Alternativ uten Cloudflare: IntersectionObserver og base64

Hvis du faktisk trenger å skjule e-post for boter, finnes det en bedre måte. Ikke noe eksternt skript, ingen soft 404 og ingen påvirkning på INP. Fremgangsmåten: base64-kod adressen og dekrypter den via IntersectionObserver, bare når den besøkende ruller til blokken som inneholder e-posten.

Steg 1. HTML-markering:

1<a class="email-hidden" href="#" data-email="aW5mb0BleGFtcGxlLmNvbQ==">
2 [email hidden]
3</a>

Attributtet data-email inneholder adressen i base64. Kod strengen med et nettbasert verktøy eller kommandoen echo -n "[email protected]" | base64.

Steg 2. Observer. Plasser skriptet i sidebunnteksten:

1const emailTag = document.querySelector('.email-hidden');
2let observer = new IntersectionObserver((entries) => {
3 entries.map((entry) => {
4 if (entry.isIntersecting) {
5 let script = document.createElement('script');
6 script.onload = function () {
7 emailDecode(entry.target);
8 };
9 script.src = '/decode-email.js';
10 document.head.appendChild(script);
11 }
12 });
13});
14observer.observe(emailTag);

Steg 3. Dekrypteringsfunksjon, filen decode-email.js:

1const emailDecode = (e) => {
2 let email = atob(e.dataset.email);
3 e.href = 'mailto:' + email;
4 e.innerHTML = email;
5};

Resultat: e-posten dekodes bare når man ruller til den. Null påvirkning på INP, null soft 404-feil. Og base64 er ikke dårligere enn Cloudflares XOR for «beskyttelse», begge metodene er trivielt reversible, men sammen med IntersectionObserver kommer ikke adressen engang inn i DOM-en ved sidelasting.

Videoguide

Hvis du foretrekker en visuell guide, her er en demonstrasjon av deaktivering av obfuskering i Cloudflare-dashbordet:

⁉️🤔 Ofte stilte spørsmål

Påvirker Cloudflare-obfuskering alle nettstedets sider?

Ja, etter at du har lagt til et nettsted i Cloudflare, er Email Address Obfuscation aktivert for hele sonen. Skriptet email-decode.min.js injiseres på hver side der tekst som ligner en e-postadresse oppdages. Du kan ekskludere enkeltsider gjennom Configuration Rules, og spesifikke adresser via HTML-kommentarer <!--email_off-->.

Hva skjer hvis jeg bare deaktiverer obfuskering?

email-decode.min.js vil umiddelbart slutte å bli injisert. Alle e-postadresser på nettstedet blir synlige i kildekoden, akkurat slik du plasserte dem. For de fleste nettsteder er dette normal drift: kontakte-posten er allerede offentlig, og å skjule den for boter kan gjøres med enklere metoder.

Beskytter Cloudflare-obfuskering mot alle spam-boter?

Nei. XOR-chifferet er det samme for alle nettsteder, hvem som helst kan dekryptere adressene. Spencer Mortensens data viser: selv CSS display:none blokkerer 100% av over 300 testede spam-høstere. Cloudflares obfuskering fungerer bare mot primitive boter som ikke forsøker å dekode XOR.

Kan jeg skjule skriptet bare for PageSpeed Insights?

Nei, PageSpeed Insights sjekker siden som en vanlig nettleser. Hvis skriptet er injisert, vil Lighthouse se det. Med april 2026-oppdateringen er render-blokkering borte, men SEO-effekter (soft 404) og mikro-påvirkning på INP gjenstår. Den eneste måten å fjerne skriptet helt på er å deaktivere Email Address Obfuscation i dashbordet.

Hvordan bekrefter jeg at obfuskering faktisk er deaktivert?

Åpne sidens kildekode (Ctrl+U) og søk etter email-decode.min.js. Intet skript betyr at obfuskering er deaktivert. Alternativt kan du sjekke nettleserkonsollen: før deaktivering inneholder DOM-en <script src="/cdn-cgi/scripts/.../email-decode.min.js">, etterpå er den borte. Endringer trer i kraft umiddelbart.

Å deaktivere eller beholde: dommen

Med april-oppdateringen sluttet email-decode.min.js å blokkere rendering. Men SEO-støy (soft 404 i Search Console) og illusjonen av sikkerhet (XOR er reversibelt på sekunder) gjenstår. Deaktivering via dashbordet tar et minutt. Bonus: rene rapporter og et par sparte INP-millisekunder på mobil.

Hvis obfuskering virkelig er nødvendig, gir alternativet med IntersectionObserver og base64 reell beskyttelse mot spam-høstere. Uten bivirkninger. Valget er ditt, men email-decode.min.js i 2026 er mer vane enn nødvendighet.