Forsinket meta-opdatering
Silktide tjekker dine sider for kode, der automatisk genindlæser siden eller viderestiller besøgende til en anden side efter en nedtælling. Besøgende har ingen mulighed for at sætte denne nedtælling på pause eller forlænge den, så sider bør ikke bruge den.
Den ansvarlige kode er et meta-opdateringstag med en forsinkelse:
<!-- Problem: viderestiller efter 5 sekunder, som besøgende ikke kan styre -->
<meta http-equiv="refresh" content="5;url=https://example.com/new-page">
<!-- Problem: genindlæser siden hvert 30. sekund -->
<meta http-equiv="refresh" content="30">
Hvorfor det er vigtigt
En side, der ændrer sig efter sin egen timer, kan komme bag på personer, der læser langsomt, bruger en eller forstørrer deres skærm. En viderestilling kan ske, før de er færdige med at læse, og en genindlæsning kan kassere en halvfærdig formular og sende en skærmlæser tilbage til toppen af siden. Da forsinkelsen er fastsat i sidens , kan ingen besøgende forlænge den, så den passer til deres tempo.
Forsinkede viderestillinger forvirrer også søgemaskiner, som håndterer dem inkonsekvent sammenlignet med korrekte viderestillinger på serversiden.
Sådan løser du det
- Ved viderestillinger skal du erstatte meta-opdateringen med en viderestilling på serversiden (et HTTP 301- eller 302-svar), som sker øjeblikkeligt og ikke kræver en nedtælling. De fleste hostingplatforme og CMS'er tilbyder indstillinger for viderestilling.
- Hvis en viderestilling på serveren er umulig, skal du indstille forsinkelsen til
0, så viderestillingen sker med det samme – en øjeblikkelig viderestilling består dette tjek. - For indhold, der genindlæses automatisk, skal du fjerne opdateringen og i stedet opdatere indholdet på stedet med , helst med en kontrol, der lader besøgende sætte opdateringerne på pause.
Sådan tester Silktide dette
- Find hvert
<meta http-equiv="refresh">-tag på hver side. - Læs antallet af sekunder fra dets
content-attribut. - Rapportér tagget, hvis forsinkelsen er større end nul, uanset om det genindlæser den samme side eller viderestiller til en anden.
- Tags med en forsinkelse på nul sekunder (en øjeblikkelig viderestilling) rapporteres ikke.