Dlaczego niektóre witryny pokazują 0 bajtów w narzędziach programistycznych Chrome?

14

Robię optymalizację szybkości strony dla mojej witryny i badam, jak robią to inne witryny. Zauważyłem, że niektóre strony internetowe, takie jak Facebook czy Ringgitplus, pokazują 0 bajtów niektórych zasobów w narzędziach programistycznych Chrome na karcie Sieć, podczas gdy rzeczywisty rozmiar zawartości to kilka kilobajtów.

Zrzut ekranu karty Sieć pokazuje 0 bajtów dla niektórych zasobów

Przeczytałem kilka artykułów, które mówią, że rozmiar to pobierana ilość, a treść to rzeczywisty rozmiar odpowiedzi. Gdy więc rozmiar wynosi 0 bajtów, oznacza to, że podano go z pamięci podręcznej. Ale to samo stało się, gdy otworzyłem stronę za pomocą Incognito lub wyczyściłem całą pamięć podręczną.

Jak to możliwe i jak mogę osiągnąć to samo dla moich stron internetowych?

kecebongsoft
źródło
2
a jeśli zrobisz ctrl + F5 (pamięć podręczna z pominięciem przeładowania)
maniak ratchet
1
Czy profilowałeś już swoją stronę za pomocą developer.yahoo.com/yslow ?
Marcel
@ratchetfreak To wciąż to samo.
kecebongsoft 17.09.13
@Marcel Tak, używam kilku narzędzi, takich jak to, o którym wspomniałeś, Google Page Speed, a także webpagetest.org
kecebongsoft 17.09.2013
Naprawdę nie odpowiada na pytania, dlaczego zasoby niebuforowane mogą pokazywać 0b, ale tutaj jest dobre pytanie SO, które rozwiązuje różnicę: stackoverflow.com/questions/8072921/…
Ben Lee

Odpowiedzi:

4

Zrozumienie zachowania Chrome jest najłatwiejsze do zobaczenia w witrynie obsługującej zarówno http, jak i https .

Jeśli otworzysz Narzędzia programistyczne i przejrzysz ten obraz , Chrome zgłasza 27,1k, jeśli obraz jest w pamięci podręcznej, i 257 bajtów, jeśli nie jest. Możesz wyczyścić pamięć podręczną w Narzędziach programisty, klikając prawym przyciskiem myszy obszar na dole ekranu (na przykład obok nav_logo161.png).

Teraz otwórz link za pomocą https . Chrome zgłasza 0 bajtów, niezależnie od tego, czy element jest buforowany, czy nie. Jeśli jest buforowany, otrzymasz 304, a jeśli nie jest buforowany, zobaczysz status 200. Ale z opóźnieniem widać, że niebuforowana odpowiedź trwa znacznie dłużej.

Krótko mówiąc, jeśli chcesz, aby Chrome zgłaszał 0 bajtów na potrzeby korzystania ze strony internetowej https .

Ten błąd jest rejestrowany tutaj i tutaj .

Ten błąd jest zauważalny przede wszystkim podczas przeglądania obrazów. Powodem, dla którego zauważasz to za pomocą linków http w oryginalnym poście, jest fakt, że obie strony faktycznie renderują w https .

dcaswell
źródło