Skip to main content

Felsökning av Safari-Långsam sidlastning

Lukaspassionen 13 (Maj 2024)

Lukaspassionen 13 (Maj 2024)
Anonim

Safari, tillsammans med nästan alla andra webbläsare, innehåller nu DNS-prefetching, en funktion som utformats för att göra surfing på webben en snabbare upplevelse genom att titta på alla länkar inbäddade på en webbsida och fråga din DNS-server för att lösa varje länk till dess faktiska IP-adress.

När DNS-prefetching fungerar bra, när du klickar på en länk på en webbplats vet din webbläsare redan IP-adressen och är redo att ladda den begärda sidan. Det betyder mycket snabba svarstider när du flyttar från sida till sida.

Så, hur kan det här vara en dålig sak? Tja, det visar sig att DNS-förhämtning kan ha några intressanta nackdelar, även om det bara under specifika förhållanden. Medan de flesta webbläsare nu har DNS-förhämtning kommer vi att koncentrera oss på Safari, eftersom det är den ledande webbläsaren för Mac.

När Safari laddar upp en webbplats, visas sidan ibland och visas redo för att du ska kunna läsa innehållet. Men när du försöker rulla upp eller ner på sidan, eller flytta muspekaren, får du en spinnande markör. Du kanske märker att webbläsarens uppdateringsikon fortfarande spinner. Allt detta indikerar att när sidan är framgångsrikt gjord, hindrar någonting webbläsaren från att svara på dina behov.

Det finns ett antal möjliga synder. Sidan kan ha fel, webbplatsens server kan vara långsam, eller en del av sidan utanför sidan, till exempel en annonstjänst från tredje part, kan vara nere. Dessa typer av problem är vanligtvis tillfälliga och kommer förmodligen att gå bort på kort tid, från några minuter till några dagar.

DNS prefetching problem fungerar lite annorlunda. De påverkar vanligtvis samma webbplats när du besöker den för första gången i en Safari-webbläsarsession. Du kan besöka webbplatsen tidigt på morgonen och upptäcka att det är extremt långsamt att svara. Kom tillbaka en timme senare, och allt är bra. Nästa dag upprepar samma mönster sig själv. Ditt första besök är långsamt, riktigt långsamt; några efterföljande besök den dagen är bara bra.

Så, vad händer med DNS-förhämtning?

I vårt exempel ovan, när du går till webbplatsens första sak på morgonen, tar Safari chansen att skicka ut DNS-frågor för varje länk den ser på sidan. Beroende på vilken sida du laddar, kan det vara några frågor eller det kan vara tusentals, särskilt om det är en webbplats som har många användar kommentarer eller du besöker ett forum av någon typ.

Problemet är inte så mycket att Safari skickar ut massor av DNS-frågor, men att vissa äldre nätverk för hemnätverk inte kan hantera begäran om belastning eller att din ISPs DNS-system är underskattat för förfrågningar eller en kombination av båda.

Det finns två enkla metoder att felsöka och lösa prestandafrågor för DNS-förhämtning. Vi ska ta dig igenom båda metoderna.

Ändra din DNS-tjänsteleverantör

Den första metoden är att ändra din DNS-tjänsteleverantör. Många använder de DNS-inställningar som deras Internetleverantör säger att de ska använda, men i allmänhet kan du använda vilken DNS-tjänsteleverantör du vill ha. Enligt min erfarenhet är vår lokala ISP: s DNS-tjänst ganska dålig. Att byta tjänsteleverantörer var ett bra drag från vår sida. det kan också vara ett bra drag för dig också.

Du kan testa din nuvarande DNS-leverantör med anvisningarna i en online-guide.

Om du efter att ha kontrollerat din DNS-tjänst bestämt dig för att byta till en annan, är den uppenbara frågan vilken? Du kan prova OpenDNS eller Google Public DNS, två populära och gratis DNS-tjänsteleverantörer, men om du inte har något emot att göra lite tweaking kan du använda en guide för att testa olika DNS-tjänsteleverantörer för att se vilken som är bäst för dig.

När du väl valt en DNS-leverantör kan du ändra din Macs DNS-inställningar.

När du har ändrats till en annan DNS-leverantör, avsluta Safari. Starta om Safari och försök sedan webbplatsen som orsakade att du upprepade problem.

Om webbplatsen laddas OK nu, och Safari är fortsatt lyhörd, så är du helt klar; problemet var med DNS-leverantören. För att göra dubbel säkerhet, försök ladda samma webbplats igen när du stänger av och startar om Mac. Om allt fortfarande fungerar, är du klar.

Om inte, är problemet troligen någon annanstans. Du kan återgå till dina tidigare DNS-inställningar, eller bara lämna de nya på plats, särskilt om du ändrats till en av de DNS-leverantörer jag föreslog ovan båda fungerar mycket bra.

Inaktivera Safari DNS-prefetch

Om du fortfarande har problem kan du lösa dem genom att aldrig besöka den webbplatsen igen, eller genom att inaktivera DNS-förhämtning.

Det skulle vara trevligt om DNS-prefetching var en preferensinställning i Safari. Det skulle vara ännu trevligare om du kunde inaktivera prefetching på en webbplats-för-plats. Men eftersom ingen av dessa alternativ är tillgängliga för tillfället måste vi använda ett annat tillvägagångssätt för att inaktivera funktionen.

  1. Starta terminalen, lokaliserad på / Program / Utilities.

  2. I fönstret Terminal som öppnas, skriv eller kopiera / klistra in följande kommando:

    standardvärden skriv com.apple.safari WebKitDNSPrefetchingEnabled -boolean false

  3. Tryck på enter eller returnera.

  4. Du kan sedan avsluta Terminal.

Avsluta och starta om Safari och besök sedan webbplatsen som orsakade dig problem. Det borde fungera bra nu. Problemet var sannolikt en äldre router i ditt hem nätverk. Om du byter routern någon dag, eller om routerns tillverkare erbjuder en programvaruuppgradering som löser problemet, vill du aktivera DNS-förhämtning på nytt. Här är hur.

  1. Starta terminalen.

  2. I fönstret Terminal anger du följande kommando:

    standardvärden skriv com.apple.safari WebKitDNSPrefetchingEnabled

  3. Tryck på enter eller returnera.

  4. Du kan sedan avsluta Terminal.

Det är allt; du borde vara helt uppsatt I det långa loppet är du vanligtvis bättre med att DNS-prefetching är aktiverat. Men om du ofta besöker en webbplats som har problem kan det vara dags att göra DNS-förhämtning av det dagliga besöket.