Je verbinding is niet privé: los mixed content op

Het zal jou ook weleens gebeuren als je een webpagina wilt bezoeken, een waarschuwing op je scherm: “Je verbinding is niet privé.” Hoewel je waarschijnlijk wel weet dat het vaak niet zo erg is, wil je dat voorkomen voor jouw eigen website. Iedere keer dat zo’n melding verschijnt levert dat afhakers op omdat je site als ‘niet veilig’ wordt beschouwd. In de meeste gevallen heb je dan te maken met mixed content. Wat is dat nu precies en vooral: hoe los je het op?

Je verbinding is niet privé: waarom niet?

Je klikt op een link om een webpagina te openen en ziet staan “Je verbinding is niet privé”, met verder een waarschuwing over cybercriminelen die je gegevens kunnen stelen. Wat is er dan aan de hand? Dat kan aan meerdere zaken liggen:

  1. Er is sprake van mixed content 
  2. Het TLS-certificaat (nog steeds foutief SSL-certificaat genoemd) is niet geldig
  3. Er zijn problemen met je besturingssysteem en/of browser die conflicteren met de website

Punt 3 komt het minst vaak voor en heeft vooral met de bezoeker te maken. We gaan hier vooral in op punt 3: mixed content. Helaas komt dat namelijk nog regelmatig voor, terwijl het over het algemeen snel op te lossen is.

Punt 2 is een kwestie van controleren of het TLS-certificaat in orde is. Is het certificaat verlopen of is de certificering voor de website om een andere reden niet in orde? Als bezoeker kun je het controleren door op de website zelf in de adresbalk te klikken op ‘Niet veilig’, wat (meestal) voor de URL staat als er iets mis is met het TLS-certificaat. Er verschijnt dan een overzicht met details over zowel cookies als het beveiligingscertificaat voor de website. Door daarop te klikken zie je de details voor het certificaat. Je kunt daar ook zien welke cookies een website allemaal gebruikt.

"Je verbinding is niet privé", zoals dat in Google Chrome wordt aangegeven bij problemen met de HTTPS-verbinding.

Mixed content als oorzaak van de beveiligingsmelding

Mixed content is een veel voorkomende oorzaak van de melding “Je verbinding is niet privé”. En dat is een probleem dat over het algemeen gemakkelijk op te lossen is. Daar hoef je zelf niet eens heel technisch voor te zijn. En het is ook zeker zaak om dat op te lossen, je wilt toch niet dat je bezoekers die beveiligingsmelding te zien krijgen en daardoor afhaken?

Wat is mixed content?

Mixed content is een conflict binnen je website, waarbij jouw website via een beveiligde verbinding (HTTPS) loopt, terwijl er intern verwezen wordt naar HTTP-pagina’s. Dat gebeurt vooral bij interne links en afbeeldingen. Het probleem is dus dat je website een HTTPS-verbinding heeft, waarbij de overdracht van de gegevens van jouw website naar de browser van je bezoeker beveiligd plaatsvindt en er intern juist interne links met een HTTP-verbinding zijn. Dat leidt trouwens niet altijd tot die melding “Je verbinding is niet privé”, maar kan ook in de adresbalk “Niet veilig” verschijnen.

Wat is er mis mee?

Het probleem van mixed content is dat je website met HTTPS ook volledig daarop moet draaien. Zodra de waarschuwing wordt gegeven aan je bezoeker, zijn de onveilige onderdelen al geladen en is het eigenlijk te laat. Je webpagina is door de onbeveiligde links minder veilig en daar kunnen kwaadwillenden misbruik van maken door je website aan te vallen.

Meer over mixed content, inclusief de twee verschillende vormen in dit artikel (Engels).

Hoe los je mixed content op?

Je bent natuurlijk hier om te weten hoe je het oplost. Allereerst is het natuurlijk zaak om te weten waar het probleem zit. Daar heb je bijvoorbeeld SEO-tools voor.  Zo krijg ik in Ahrefs Site Audit te zien wanneer er sprake is van mixed content, zodat we het kunnen oplossen. Wil je dus op de hoogte gesteld worden van mixed content, dan zijn site audits zoals van Moz, Semrush en Ahrefs de meest logische manier. Je kunt ook nog gebruikmaken van een crawler als Screaming Frog waarmee je per website dit soort audits kunt draaien.

Heb je er geen budget voor of wil je gewoon een enkele pagina checken waarvan je weet dat er sprake is van mixed content, dan zijn er bijvoorbeeld:

  • Whynopadlock: gratis bij losse URL’s, hele website checken tegen een vergoeding
  • Mixed content checker: gratis (met wat reclame op de pagina), maar wel per pagina, dus je moet handmatig URL’s invoeren en eigenlijk al weten dat er sprake is van mixed content

Oplossen dus

Wil je het oplossen, kun je handmatig alles wijzigen. Soms is dat snel genoeg gedaan, zoals ik onlangs had bij een klant waarbij er nog interne links met HTTP in de footer stonden. Enkele links handmatig aanpassen en binnen een paar minuten is het klaar. Is er sprake van allerlei interne links die voor problemen zorgen, dan is zoeken en vervangen een snellere oplossing. Hoe je dat voor je WordPress website doet heeft Kees Lamper voor je uit de doeken gedaan.

Afbeeldingen zijn een ander verhaal

Bij afbeeldingen kun je niet hetzelfde doen als bij interne links. Daar zul je dus meer werk van moeten maken. Of je moet de afbeeldingen opnieuw in de pagina’s plaatsen, of je zult aan de slag moeten met zoek & vervang zoals uit het blog van Lamper Design dat ik hiervoor aanhaal.

Voorkomen is beter dan genezen

Sowieso is voorkomen beter dan genezen. Met interne links kan dat vrij eenvoudig. Als je in plaats van de volledige URL voortaan alleen de slug gebruikt als link, werkt de link ook én blijft de link werken binnen je website, wat er ook gebeurt. Dus ook wanneer je bijvoorbeeld van domeinnaam verandert, zoals wij in 2020 deden, blijven al je interne links werken en hoef je daar geen extra handelingen voor uit te voeren. Dit is hoe je dat doet:

Bij het invoegen van een interne link kun je de domeinnaam verwijderen om zo alleen de slug over te houden.

Je ziet dat ik de domeinnaam geselecteerd heb (daarom is die blauw) en als ik die verwijder blijft de slug over. Voor een interne link is dat helemaal prima.

Heb jij te maken (gehad) met mixed content, was jij je wel bewust van dit probleem? Heb je iets aan te vullen of heb je nog vragen, laat het dan weten in de reacties.

0 antwoorden

Plaats een Reactie

Meepraten?
Draag gerust bij!

Geef een antwoord

You have to agree to the comment policy.

Deze website gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie-gegevens worden verwerkt.