(Zelf je) WordPress site migreren naar HTTPS

Er is al veel over geschreven, ook ik had het een eindje terug al over dat ook jouw website HTTPS nodig heeft in deze blog. Daarin raadde ik iedereen aan om, zeker het nu ook gratis kan, over te stappen op een (meer) beveiligde website.

Image 2017-07-19 at 4.00.45 PM.png
Image 2017-07-19 at 4.01.58 PM.png

Waarom?

Slotje Veilig

Veel websites hebben een contactformulier waar klanten/bezoekers hun gegevens kunnen nalaten. Om deze gegevens veilig te versturen en de privacy te beschermen over het internet is een SSL verbinding uiterst belangrijk. De data wordt immers versleuteld over het internet gestuurd.

Ook je eigen login pagina verstuurd je wachtwoord niet meer onversleuteld het internet over als er SSL geïmplementeerd is.

Ook zoekmachines zoals Google hebben het al enkele jaren als één van hun rankingsfactoren, ook al is het zeker geen grote prioriteit.

Gratis certificaat

Let’s Encrypt is een organisatie die gratis certificaten aanbiedt. Op die manier hoeft je overstap dus helemaal niets te kosten indien je het zelf doet. Nog een extra stimulans om het dus voor elkaar te krijgen.

Controleer hiervoor of je hostingsfirma de integratie aanbiedt, indien (nog steeds!) niet heb je twee keuzes, je verandert van hosting, of belt hen op om er melding van te maken en dit te laten integreren.

Doe het zelf

Veel mensen installeren een plugin die SSL ‘forceert’. De plugin ‘Really Simple SSL’ is populair maar vertraagt je website bij iedere opvraging. De server geeft HTTP en alles moet door de plugin omgezet worden naar HTTPS vooraleer die naar de bezoeker wordt doorgestuurd.

Doe dit niet! Pak het ‘probleem’ bij de oorzaak aan. De aanpassingen moeten maar één keer uitgevoerd te worden.

Hieronder een stappenplan, de eerste stap is via DirectAdmin, als je host een eigen of ander platform aanbiedt zoek je best even hun documentatie op hoe je de wijzigingen aan de serverzijde aanpakt. Bij problemen kun je altijd terecht bij je hosting.

  1. Installeer via de host je certificaat via hun controlepaneel. Bij Directadmin is dit onder het SSL Certificaten paneel, bij andere controlepanelen als cPanel of Plesk zal dat er iets anders uit zien.
    DirectAdmin SSL Let's Encrypt
  2. Log in op je website en ga naar Instellingen > Algemeen. Verander beide urls van je website van http naar https. Bewaar de wijzigingen.
  3. Nu heb je de WordPress omgeving aangepast maar hiermee heb je nog niet alle links in je database naar HTTPS omgezet. Deze stap wordt vaak over het hoofd gezien maar is essentieel voor de migratie te voltooien.
    Als er ook maar één bestand wordt ingeladen over http krijg je een mixed content waarschuwing en een grijze https …
    Mixed content grijze HTTPS
    Mixed Content waarschuwing browser
  4. Om de database aanpassingen door te voeren maak ik steeds gebruik van script van Interconnect. Die vind je hier.
  5. Je download het zip bestand, pakt het uit en plaatst het via (s)FTP op je webserver. Zet het in een map die via de browser te benaderen is bvb. public_html/senr/
  6. Surf naar jewebsitenaam.tld/senr/ en je vind er deze pagina:
    Image 2017-07-21 at 8.30.54 AM.png
  7. Automatisch zouden de velden met de juiste gegevens van je database ingevuld moeten worden. Geen paniek, hij haalt deze gegevens uit het wp-config.php bestand in de hoofdmap.
  8. Doe de noodzakelijke wijzigingen zoals ik hieronder doe en vergeet daarbij uiteraard niet jouw website URL in te vullen.
    Dry Run: dit is louter een test zodanig dat je ziet hoeveel je string wordt gevonden in de database.
    Live Run: hiermee voer je effectief de verandering door.
    Aanpassing 1 in de database
    Aanpassing 2 in de database
  9. Na deze twee wijzigingen is het meeste al gewijzigd. Hierna controleer je best of alle pagina’s al het groene slotje aantonen. Zie je toch nog problemen dan zal je de restanten manueel moeten zoeken, meestal staan die in je thema instellingen / child thema.
    Rechtsklikken op de pagina, inspecteren en dan naar het console tabblad surfen toont je de overige meldingen.
  10. Vergeet zeker niet de bestanden van dit script terug te verwijderen, enerzijds kun je die manueel verwijderen, maar er is ook een knop waarbij de bestanden verwijderd worden:
    Bestanden zeker verwijderen na de wijzigingen

Aan de hand van dit stappenplan heb je 9/10 keer zelf je site volledig overgezet, moest je toch nog pagina’s zien waar er toch nog mixed content op staat, dan is dat vermoedelijk nog door handmatige instellingen of code in je childthema of customizer.

Conclusie

Je site op SSL zetten hoeft dus niet lang te duren en ook niet veel te kosten, het niet doen zou zonde zijn van de betrouwbaarheid en veiligheid van je website.

Heb je nog vragen of opmerkingen over deze uitleg, reageer hieronder en ik beantwoord je bericht.