Skip to content

Alt om WordPress, webutvikling — og mer til

🔒 Slik fikser du blandet innhold i WordPress: 2 trinn

🔒 Slik fikser du blandet innhold i WordPress: 2 trinn

Du installerte et SSL-sertifikat og konfigurerte HTTPS, men nettleseren viser fortsatt en advarsel om at tilkoblingen ikke er sikker. Høres det kjent ut?

Slik ser en feil med blandet innhold ut. Nettstedet ser ut til å fungere fint, besøkende klager ikke, men Google ser problemet og senker søkerangeringen din. Siden 2018 markerer Chrome sider med blandet innhold som usikre, og policyen blir strengere med hver oppdatering.

Å fikse dette tar to steg. Du trenger ingen utvikler, ingen manuell redigering av hver lenke og ingen risiko for å ødelegge layouten.

💡 Rask oversikt:

  • finn kilden til blandet innhold ved hjelp av Chrome DevTools eller nettbaserte verktøy
  • installer en plugin (automatisk metode) eller rediger .htaccess og databasen (manuell metode)
  • verifiser resultatet og sett opp HTTPS-viderekobling for fremtiden

Hva er blandet innhold og hvorfor er det farlig

Blandet innhold er en situasjon der en side lastes over HTTPS, men enkeltelementer på den (bilder, skript, stiler, fonter) hentes over den usikre HTTP-protokollen.

Nettleseren ser på dette som et sikkerhetshull. En angriper kan avskjære HTTP-forespørselen, bytte ut et skript eller bilde og få tilgang til brukerdata. Det er derfor Chrome, Firefox og Safari blokkerer «aktivt» blandet innhold (skript, iframes) fullstendig, mens «passivt» innhold (bilder, media) utløser en advarsel i adressefeltet.

Den typiske årsaken er migrering fra HTTP til HTTPS. Gamle lenker i innhold, temainnstillinger, CSS-filer og widgets forblir med http://-prefikset. WordPress endrer dem ikke automatisk, derav konflikten.

Siden 2020 har Google uttalt eksplisitt: HTTPS er et rangeringssignal. En side med blandet innhold mister den «grønne hengelåsen» og, sammen med den, besøkendes tillit og plasseringer i søkeresultatene. Du må fikse dette umiddelbart etter at du har installert SSL, uten opphold.

Steg 1: Diagnose, finne kilden til problemet

Før du fikser noe, må du forstå hvilke ressurser som lastes over HTTP. Den universelle metoden er Chrome DevTools.

Åpne nettstedet ditt i Chrome, trykk F12 (eller Ctrl+Shift+I), gå til fanen Console og oppdater siden. Hver linje med en «Mixed Content»-advarsel viser den nøyaktige URL-en til den problematiske filen.

Chrome DevTools-konsoll som viser feil med blandet innhold

I nærheten, under fanen Security, finner du et sammendrag: sertifikatstatus, liste over usikre forespørsler og anbefalinger for å fikse dem. Dette er nok for en rask vurdering av situasjonen.

Sikkerhet-fane med liste over usikre forespørsler

Hvis det er mange feil og du trenger en komplett liste i én rapport, kommer nettbaserte verktøy til unnsetning.

Utviklerverktøy-panel med filtrering av sikkerhetsfeil

Jitbit SSL Checker er en gratis nettbasert skanner. Skriv inn URL-en og få en liste over alle HTTP-ressurser på siden: bilder, skript, CSS, eksterne kall. Gratisversjonen sjekker opptil 200 sider.

SSL-sjekkresultater i Jitbit-tjenesten

Why No Padlock er en annen gratis tjeneste med detaljert analyse: hvilke elementer som ikke er sikre, hvor de lastes fra og hvilken innholdstype de tilhører. Den støtter sjekk av sider som krever autentisering.

Detaljert Why No Padlock-rapport om blandet innhold på en side

HTTPS Checker er et skrivebordsverktøy for macOS som skanner nettstedet ditt lokalt og viser feil etter hver endring. Det fungerer med en grense på 100 sider og er praktisk for stegvis feilsøking.

Når du har listen over problematiske URL-er foran deg, går du videre til å fikse dem.

Steg 2: Fiksing, tre metoder som fungerer

Valg av metode avhenger av antall feil og din vilje til å jobbe med kode. Plugins løser oppgaven med et par klikk, mens den manuelle metoden gir deg full kontroll.

Metode 1: Really Simple Security, automatisert løsning

Really Simple Security (tidligere Really Simple SSL) er den mest populære WordPress SSL-pluginen med 3 millioner aktive installasjoner og en vurdering på 4,9/5 på WordPress.org.

Really Simple Security-plugin-side i WordPress-administrasjon

Installer programtillegget via «Utvidelser → Legg til ny», aktiver det og kjør veiviseren. Programtillegget gjør automatisk følgende:

  • setter HTTPS i WordPress-innstillingene (nettstedsadresse og hjem-URL),
  • konfigurerer 301-viderekobling fra HTTP til HTTPS,
  • erstatter HTTP-lenker i innhold «i farten» via utdatabuffer,
  • sjekker sertifikatet og varsler om utløp.

Etter installasjon åpner du nettstedet i inkognitomodus og forsikrer deg om at hengelåsen i adressefeltet er grønn og at det ikke finnes advarsler om blandet innhold i DevTools → Console. For de aller fleste nettsteder er dette nok.

Metode 2: SSL Insecure Content Fixer, fleksible nivåinnstillinger

Hvis Really Simple Security ikke fungerte (for eksempel fordi noe innhold lastes via tredjeparts-API-er), kan du koble til SSL Insecure Content Fixer. Programtillegget har 100 000 aktive installasjoner, en vurdering på 4,8/5 og tilbyr fem filtreringsnivåer:

Filtreringsnivåinnstillinger for SSL Insecure Content Fixer-plugin
  • Simple er grunnivået for nybegynnere, fikser lenker i innhold og innstillinger;
  • Content sjekker i tillegg tekstwidgeter og shortkoder;
  • Widgets fokuserer på widget-innhold, inkludert tilpasset HTML;
  • Capture fanger opp hele siden før rendering og erstatter alle http:// med https://. Tregere, men mer effektivt;
  • Capture All gir maksimal dekning: skript, innebygd stil, eksterne kall. Den mest ressurskrevende modusen.

Start med Simple. Hvis feil vedvarer, bytter du til et høyere nivå og kontrollerer nettstedet på nytt. Ikke gå rett til Capture All uten at det er nødvendig: det belaster serveren og kan komme i konflikt med hurtigbuffer-programtillegg.

Metode 3: Manuell fiks,.htaccess og database

Hvis du er prinsipielt imot ekstra programtillegg eller feilen er isolert, kommer den direkte veien her.

Steg A. Tving HTTPS-viderekobling i.htaccess. Legg til følgende i begynnelsen av filen (før # BEGIN WordPress):

1RewriteEngine On
2RewriteCond %{HTTPS} off
3RewriteRule ^(.*)$ https://%{HTTP_HOST}/$1 [R=301,L]

Lagre og kontroller at forsiden og alle interne URL-er viderekobles til HTTPS. Last ned en sikkerhetskopi av.htaccess før du redigerer: én skrivefeil kan ødelegge nettstedet.

Steg B. Erstatt HTTP-lenker i databasen. Gamle URL-er inne i innlegg, metafelter og innstillinger har fortsatt http://. Å endre dem med et direkte SQL-spørring er risikabelt fordi serialiserte PHP-data ødelegges. Bruk:

  • WP-CLI: wp search-replace 'http://example.com' 'https://example.com' --dry-run (først uten --dry-run for å se antall erstatninger);
  • programtillegget Better Search Replace, som gjør det samme via administrasjonspanelet med forhåndsvisning.

Etter erstatning tømmer du nettleserbufferen (Ctrl+Shift+Del), programtilleggsbufferen (WP Rocket, LiteSpeed) og sjekker nettstedet i inkognitomodus.

Nyttig video om temaet

Kanalforfatteren GoTechWizard demonstrerer prosessen med å fikse blandet innhold fra diagnose til ren HTTPS uten en eneste kodelinje:

⁉️🤔 Ofte stilte spørsmål

Hvorfor viser nettstedet fortsatt «ikke sikkert» etter at jeg har installert SSL?

SSL-sertifikatet er aktivert på serveren, men noe innhold lastes over HTTP. Sertifikatet dekker forbindelsen mellom nettleseren og serveren, mens HTTP-lenker inne på siden omgår det. Nettleseren ser blandingen av protokoller og advarer brukeren. Det er tre hovedårsaker: gamle lenker til bilder i innlegg (satt inn før SSL-installasjon), hardkodede HTTP-URL-er i temaet eller utvidelser, og eksterne ressurser (Google-fonter, CDN-skript) som lastes via http:// i stedet for https://. Diagnostiser via DevTools → Console og følg trinnene i denne artikkelen.

Må jeg kjøpe et SSL-sertifikat, eller holder det med et gratis?

For de aller fleste nettsteder er en gratis SSL fra Let's Encrypt tilstrekkelig. Det er anerkjent av alle nettlesere og søkemotorer. Betalte sertifikater (OV, EV) gir mening for nettbutikker, banker og nettsteder med betalingsskjemaer: de krever selskapsverifisering og viser organisasjonsnavnet i adressefeltet. For en blogg, portefølje eller bedriftsnettside er Let's Encrypt standarden. De fleste hosting-leverandører (Timeweb, Beget, Hostinger) utsteder det automatisk når du oppretter et nettsted.

Kan blandet innhold fikses uten utvidelser og kodeendringer?

Hos enkelte hosting-leverandører, ja. Cloudflare inkluderer alternativet Automatic HTTPS Rewrites i sin gratisplan: det fikser HTTP-lenker til HTTPS i sanntid for all trafikk som går gjennom CDN-et. Dette er imidlertid en halvveis løsning: problemet forblir på servernivå, og når du deaktiverer Cloudflare, kommer feilene tilbake. Det er bedre å eliminere årsaken ved å erstatte HTTP-lenker i databasen og sette opp en.htaccess-viderekobling. Da vil nettstedet ditt være rent uavhengig av hvordan trafikken leveres.

SSL Insecure Content Fixer* eller Really Simple Security: hvilken bør jeg velge?*

Det avhenger av oppgaven. Really Simple Security er en «sett og glem»-løsning: egnet for et typisk WordPress-nettsted uten komplekse integrasjoner. SSL Insecure Content Fixer er et verktøy med graderte nivåer for finjustering. Hvis feil vedvarer etter at du har aktivert Really Simple Security (dette skjer med ikke-standard temastrukturer, egendefinerte endepunkter eller utvidelser med direkte HTTP-kall), bytt til SSL Insecure Content Fixer og øk filtreringsnivået. Praksis viser: den første utvidelsen dekker de fleste tilfeller, den andre håndterer resten.

Er det trygt å bruke Capture All-modus i SSL Insecure Content Fixer?

Capture All fanger opp og skriver om hver byte av siden før den sendes til nettleseren. Dette er pålitelig, men øker CPU-belastningen. På svak hosting eller nettsteder med høy trafikk kan det oppstå en responsforsinkelse på 100-300 ms. Mellomlagringsutvidelser (WP Rocket) demper denne effekten: siden genereres én gang og serveres fra mellomlager. Før du aktiverer Capture All, sørg for at mildere nivåer ikke har løst problemet, og opprett en sikkerhetskopi.

Fikset blandet innhold, hva nå

En feil med blandet innhold er ingen dødsdom. Etter de to trinnene fra denne artikkelen er den fullstendig løst og kommer som regel ikke tilbake. Nøkkelen er ikke å dempe nettleseradvarsler, men å eliminere årsaken: bytt alle ressurser til HTTPS.

Konsolider resultatet: sett opp automatisk SSL-sjekk (UptimeRobot eller hosting-overvåking sender et varsel 30 dager før sertifikatet utløper) og gjør det til en vane å sette inn nye lenker med https:// fra starten av. Noen få minutters forebygging nå sparer timer med feilsøking senere.