Webshare migratie

De webshares omgeving werd volledig vernieuwd (januari 2020): de verschillende onderliggende componenten (OS, softwarepakketen, ondersteunde scripttalen, ...) werden up to date gebracht en beveiliging van de server werd verbeterd.
In grote lijnen blijft de webshares omgeving dezelfde functionaliteit bieden: een platform voor het hosten van eenvoudige HTML, PHP of Perl gebaseerde websites.

Wat verandert er?

Wat verandert er niet?

De folderstructuur op de nieuwe webshare omgeving blijft grotendeels behouden (er komt een folder bij voor logs van de webserver):
/ -> enkel toegankelijk voor webmasters
/WWW: publieke WWW folder (apache docroot) -> hier komen de bestanden die door webserver getoond worden aan de bezoeker
/lib: folder voor includes, bibliotheken, (php)code (deze zijn enkel toegankelijk voor code en scripts)
/logs: access en error logs van de webserver voor je webshare (enkel toegankelijk voor webmasters)
/old: link naar webshare op oude omgeving (enkel tijdens de migratie, enkel toegankelijk voor webmasters)

Migratiepad

Opkuisen inactieve webshares

  • De migratie zal gepaard gaan met een opkuisactie van inactieve sites.
  • Vóór de migratie zal aan de beheerders via de webshare self-care pagina gevraagd worden of hun site nog behouden moet blijven.
  • Om de nieuwe omgeving up-to-date te houden zal dit na een jaar terug gevraagd worden.
  • Als een site niet langer actief moet blijven, dan wordt deze gearchiveerd
  • Als de site behouden moet blijven, dan wordt de migratie gestart.
  • Indien er geen reactie is na 30 dagen (cf. afsluiten webshares met onveilige cms'en), wordt de site als inactief beschouwd en gearchiveerd.

Aanmaken van nieuwe share en overzetten bestanden

Bij een migratie worden alle bestanden van een webshare volledig overgezet naar de nieuwe omgeving, met behoud van permissies.
Via samba wordt de nieuwe webshare zichtbaar, er wordt tevens een link voorzien naar de oude share.

Testomgeving

Tijdens die testperiode blijft de oude site live.

De nieuwe website is wel al beschikbaar via
  • Met behulp van de FoxyProxy Add-on als tool om te switchen tussen test en productie of oude en nieuwe omgeving webshares
  • de Firefox app op Athena: 'webshare migratie test'. Via deze app krijgt de gebruiker de webshare op de nieuwe omgeving te zien
  • kan ook via /etc/hosts
    • voorbeeld: de site die je wil testen heet test.ugent.be
    • voeg aan je /etc/hosts bestand (op linux, en andere op unix gebaseerde besturingssystemen, zoals oa. macos) of aan c:\Windows\System32\drivers\etc\hosts (windows) volgende lijn toe
    • 157.193.40.9 test.ugent.be
    • nota bene: meestal heb je extra rechten nodig om deze file te kunnen aanpassen
  • sommige tools, zoals curl, hebben hiervoor hun eigen mechanisme
    • curl --resolve test.ugent.be:443:157.193.40.9 -IL test.ugent.be
    • zie man curl

Testperiode

Mogelijk duiken er nog een paar problemen op bij migratie van een share, daarom wordt een korte test/migratieperiode voorzien zodat iedere beheerder kan nakijken of de webshare nog werkt zoals het hoort en eventuele aanpassingen kan doen.
Zaken om na te kijken:

Mixed content

Wat is het?
  • de site zal enkel nog beschikbaar zijn via https. Alle ingesloten materiaal (afbeeldingen, fonts, scripts, css, iframes, ajax, api's ...) die via http opgevraagd worden i.p.v. https zal geblokkeerd worden door de server
  • https moet de bezoeker beschermen tegen ongewenst meekijken, als daar dan toch onbeschermd materiaal tussen zit is de beveiliging onbetrouwbaar
Hoe pak je mixed content aan?
  • Gebruik zo veel mogelijk relatieve locaties (zonder protocol, zonder servernaam), zie: https://www.geeksforgeeks.org/html-file-paths/
  • Gebruik in elk geval enkel nog https links
  • Als je extern materiaal gebruikt:
    • (met extern materiaal bedoelen we hier extern aan de webserver en vhost waar de website draait, dus als je website op x.ugent.be staat verwijzen naar y.ugent.be of z.ergensanders.com)
    • gebruik ook hier bij voorkeur enkel een https locatie
      • verwijs je naar een eigen andere server: schakel die ook om naar https
      • verwijs je naar een andere ugent server: dring er op aan dat men die overschakelt naar https
      • idem voor extern aan de ugent
      • zaken die door een zeer groot aantal gebruikers gebruikt worden (jquery, bootstrap, fonts, ...) gebruik je best rechtstreeks van de bronsite of van een cdn
      • bijvoorbeeld: als het over javascript bibliotheken gaat gebruik je best wel een betrouwbare externe bron (zie https://www.quickonlinetips.com/archives/2015/09/best-free-jquery-cdn/)
      • bijkomend voordeel: die dingen zijn steeds up-to-date, hebben een betere, bredere internetverbinding en worden voortdurend gecontroleerd op beveiligingsproblemen.
    • als het eenvoudiger is om het materiaal lokaal te kopieren ga dan na of dat wel mag.

Nieuwere versie server programmeertalen: PHP, PERL

  • de nieuwe omgeving gebruikt recentere versies
    • PHP 7.3
    • Perl v5.24.1
  • sommige opties zijn niet meer beschikbaar
    • voorlopig geen support voor Python
    • geen support voor executable binaries (cgibin)
    • sommige onderdelen van een programmeertaal zijn niet meer of niet meer in dezelfde vorm beschikbaar
  • Ga na of je huidige site nog kan werken met de nieuwe versie
  • In principe zou je dit moeten kunnen vaststellen op de testsite via de browser en / of via de logfiles

Nieuwe structuur en rechten op het bestandssyteem

  • Het insluiten van bestanden (libraries, configuratiebestanden) uit andere folders zou moeten blijven werken als dit relatief is
  • Verwijzing naar andere absolute locaties zal wellicht niet meer werkt

Activatie nieuwe webshare

Als de beheerder aangeeft dat de nieuwe website goed werkt, wordt de site op de nieuwe omgeving actief gezet. De webshare op de oude omgeving is dan niet langer toegankelijk.
Indien er geen reactie ontvangen wordt tegen het einde van de migratieperiode, wordt de site definitief geactiveerd op de nieuwe omgeving.

Planning

FAQ

Veelgestelde vragen over de webshare migraties kan u terug vinden op Webshare migratie FAQ pagina.