Jak zapewne wiesz, Google Chrome ma własną pamięć podręczną DNS. Czy istnieje sposób, aby go wyczyścić bez czekania na przekroczenie limitu czasu lub zamknięcie przeglądarki?
Jak zapewne wiesz, Google Chrome ma własną pamięć podręczną DNS. Czy istnieje sposób, aby go wyczyścić bez czekania na przekroczenie limitu czasu lub zamknięcie przeglądarki?
Odpowiedzi:
Przejdź do chrome: // net-internals / # dns i naciśnij przycisk „Wyczyść pamięć podręczną hosta”.
Czasami musisz opróżnić pule gniazd po opróżnieniu DNS:
chrome://net-internals/#sockets
hosts
plik i automatycznie czyści pamięć podręczną dnscache za każdym razem, gdy są jakieś zmiany w hosts
pliku. —Możesz łatwo przetestować, czy to działa w twoim systemie, dodając pustą linię po hosts
pliku, a lista w chrome://net-internals/#dns
zostanie automatycznie uzupełniona. Usługa Windows dnscache będzie również (przynajmniej w systemie Windows 8.1) monitorować plik hosts pod kątem zmian, więc po zaktualizowaniu hosts
pliku wystarczy kliknąć przycisk „Opróżnij pule gniazd” . Nic więcej nie jest potrzebne.
ipconfig /flushdns
bzdur. ipconfig /flushdns
wydaje się być czerwonym śledziem w całym tym wydaniu.
„Przejdź do chrome: // net-internals / # dns” nie działa w przeglądarce Google Chrome, przynajmniej w moim systemie. Wygląda na to, że to rozwiązanie może działać w systemie operacyjnym Google Chrome, ale bardziej ogólnie w przeglądarce Google Chrome. Dla mnie link przekierowuje tutaj:
Projekty Chromium
Wygląda na to, że „Opróżnij pamięć podręczną” jest lepszym rozwiązaniem. Pamiętaj też, że moja przeglądarka mówi „Preferencje” zamiast „Opcje”
Przez http://www.google.com/support/forum/p/Chrome/thread?tid=026b6a1d9151a6e3&hl=pl
„Idź do narzędzi -> opcje -> Pod maską -> Wyczyść dane przeglądania i zaznacz„ opróżnij pamięć podręczną ”i kliknij wyczyść dane przeglądania. Tak tak, wiem, nie jest to pamięć podręczna DNS, którą spodziewałbym się wyczyścić, ale hej, wydaje się, że tak. A teraz działa dla mnie ”.
Kliknięcie „wyczyść pamięć podręczną hosta” w chrome://net-internals/#dns
powinno to zrobić dla Google Chrome, ale na twoim komputerze są inne pamięci podręczne DNS.
Windows:
ipconfig /flushdns
OS X wcześniejszy niż 10.7 (przed Lion):
sudo dscacheutil -flushcache
OS X 10.7–10.9 (Lew, Lew górski, Mavericks):
sudo killall -HUP mDNSResponder
OS X 10.10+ (Yosemite):
sudo discoveryutil mdnsflushcache
OS X 10.11, 10.12+ (El Capitan, Sierra):
sudo killall -HUP mDNSResponder
Router może również buforować DNS (zrestartuj go lub przeczytaj instrukcję). Ostatecznym testem jest użycie dig , ale używa to hosta DNS twojej sieci, a nie domyślnego serwera autorytatywnego:
dig superuser.com
Aby wykonać zapytanie bezpośrednio ze źródła, spróbuj czegoś takiego:
dig superuser.com @ns1.serverfault.com
W OS X 10.9.1 z Chrome 32 musiałem zarówno wyczyścić pamięć podręczną hosta, jak i opróżnić pule gniazd, aby Chrome odświeżył pamięć podręczną DNS:
chrome://net-internals/#sockets
To działało dla mnie: Opróżnij i wyczyść pamięć podręczną dysku
W Chrome kliknij ikonę klucza, a następnie Opcje . Przejdź do zakładki Pod maską . Kliknij przycisk Wyczyść dane przeglądania w sekcji Prywatność . Zaznacz pole wyboru „Opróżnij pamięć podręczną”, a następnie kliknij przycisk Wyczyść dane przeglądarki .
To zadziałało natychmiast - nawet nie musiałem zamykać przeglądarki.
chrome://net-internals/#dns
wspomnianej tu sztuczki koloru, bez powodzenia.
O ile mogę znaleźć, w najnowszych wersjach Chrome (mam 26.0.1410.43) nie ma (niezawodnego) sposobu, aby to zrobić, przynajmniej nie na komputerze Mac. Żadna z sugestii na tej stronie nie działała dla mnie.
Moja sytuacja jest taka, że dodałem wpis pliku hosta , ale Chrome nadal korzysta z adresu IP zwróconego przez DNS. Firefox działa poprawnie.
W rzeczywistości chrome://net-internals/#dns
strona po prostu kłamie na temat adresu IP. Pokazuje adres IP z wpisu hostów, ale najwyraźniej nie jest to miejsce, z którego faktycznie pobiera witrynę.
Wiem, że to stare pytanie, ale denerwowały mnie te same skargi, co inne: nawet po wyczyszczeniu pamięci podręcznej może upłynąć minuta lub dwie, zanim nowe zmiany DNS zostaną uruchomione.
Jest na to kilka sposobów. Po wyczyszczeniu pamięci podręcznej DNS przez chrome: // net-internals / # dns (lub przy użyciu rozszerzenia, które osiąga ten sam wynik):
Otwórz okno incognito, a nowe mapowania DNS dla domeny zaczną obowiązywać natychmiast.
Wyczyść pamięć podręczną przeglądarki. Jest to uciążliwe, jeśli używasz przeglądarki do regularnego przeglądania. Możesz uruchomić osobną instancję przeglądarki jako inny użytkownik, a wyczyszczenie pamięci podręcznej na tym koncie nie zakłóci zwykłej pamięci podręcznej przeglądania. Nie próbowałem tego, ale powinno działać.
Naciśnij CTRL + F5. Musiałem przytrzymać naciśnięty klawisz CTRL + F5 przez około sekundę, co kilka razy powoduje ponowne załadowanie strony. To dziwne zachowanie, ale działa i jest równie skuteczne. To jest moje preferowane podejście.
Idealnie powinna być wtyczka, która może wyczyścić DNS i pamięć podręczną (konkretnie tylko pamięć podręczną dokumentów, a nie pamięć podręczną plików cookie), ale jeszcze niczego takiego nie znalazłem.
AKTUALIZACJA: W OSX aplikacja Maska przeciwgazowa doskonale nadaje się do przełączania między plikami hostów, a wraz z obejściem nr 2 jest dość skuteczna.
Ma to rozwiązać problem polegający na tym, że Chrome nie może używać poprawnych hostów po zmodyfikowaniu pliku hosts, ponieważ Chrome korzysta z pul gniazd.
Chrome przyspiesza długie połączenia w puli połączeń. Gdy Chrome stwierdzi, że żądanie może ponownie użyć połączenia w puli połączeń, nie przejdzie ponownie przez DNS, dlatego zawsze widzimy, że Chrome nie reaguje natychmiast na zmianę hostów.
Chrome ma interfejs do opróżniania puli połączeń w zakładce chrome: // net-internals / # sockets, ale myślę, że to denerwujące, że muszę najpierw przejść do tej karty i kliknąć tak mały przycisk za pomocą gładzika.
Odkryłem, że po kliknięciu przycisku puli gniazd do opróżniania Chrome wykonuje dwie kluczowe metody JavaScript.
g_browser.sendFlushSocketPools();
g_browser.checkForUpdatedInfo(false);
Tak więc enkapsuluję te dwie metody w skrypcie AppleScript, który można przekonwertować na aplikację OS X lub przepływ pracy Alfred, które można łatwo wywołać.
Próbowałem opróżnić pamięć podręczną DNS na tak wiele sposobów, ale nic nie działało dla mnie. W końcu planowałem zmienić wpis DNS . Ta sztuczka będzie działać dla wszystkich osób, które uzyskują dostęp do Internetu za pośrednictwem szybkiego połączenia LAN.
W przypadku połączenia LAN użytkownik zazwyczaj otrzymuje dwa adresy DNS. Jeden jest pierwotny, a drugi to wtórny lub alternatywny adres DNS. To, co zrobiłem, to to, że właśnie zmieniłem adres dodatkowy na adres podstawowy i odwrotnie. To zadziałało dla mnie natychmiast.
Przez dwa dni utrzymywałem alternatywny adres DNS jako adres podstawowy. Problem sam się rozwiązał, a później przywróciłem stary wpis DNS.
Pełny proces:
Utworzono witrynę w IIS (Windows 8), ustaw nagłówek hosta.
Próbowałem trafić do hosta bez pliku hosta, upewniając się, że używasz http: //, więc nie jest to tylko wyszukiwarka google. Poprawnie nie powiodło się w chrome „Wersja 32.0.1700.76 m”
Dodaj hosta do pliku hosta jako 127.0.0.1, teraz możesz trafić go w chrome.
Usuń z pliku hosta i uruchom ipconfig / flushdns, chrome nadal pokazuje stronę!
Nie rób nic poza CTRL + F5, a teraz poprawianie strony kończy się niepowodzeniem w Chrome.
Biorąc pod uwagę liczbę różnych odpowiedzi tutaj, zastanawiam się, czy wszyscy mamy nieco inne przypadki użycia.
Dla mnie załatwiło to prywatne przeglądanie (Nowe okno incognito / prywatne okno).
Wypróbuj DNS Flusher dla Chrome. Pamiętaj, że aby go użyć, wymaga flagi wiersza polecenia --enable-benchmarking
podczas uruchamiania przeglądarki Chrome.
Przejdź do chrome: // net-internals / # dns i naciśnij przycisk „Wyczyść pamięć podręczną hosta”. jak już odpowiedziano Również może być konieczne polecenie dscacheutil -flushcache w systemie OS X, aby opróżnić systemową pamięć podręczną DNS. ipconfig / flushdns w wierszu polecenia systemu Windows
W systemie Mac OS X żadne z wyżej wymienionych podejść nie działało dla mnie. Zastosowano następujące podejście:
Kliknij menu Chrome> preferencje> kliknij link show advanced settings
u dołu strony> kliknij clear browsing data
przycisk w privacy
sekcji> wybierz tylko cached images and files
i download history
(być może nie jest to wymagane później, ale też nie zaszkodzi)> kliknij clear browsing data
przycisk.
W przypadku użytkowników iPhone'a techniki te działają równie skutecznie. Musiałem przeprowadzić pewne testy strony internetowej i chciałem zastąpić normalny serwer DNS i użyć własnego serwera DNS z wpisami DNS, które nie są jeszcze publiczne.
Zastępuję wpis DNS w ustawieniach Wi-Fi na moim iPhonie 6 Plus na niestandardowym serwerze DNS. To wystarczyło dla Safari i Perfect Browser. Ale Chrome wydawał się to ignorować i miał własny zestaw wpisów DNS. NIE mogłem dowiedzieć się, skąd pochodzą.
Zrobiłem to, co opisano powyżej
I musiałem również użyć karty InCognito, jak wspomniano powyżej.
Tylko TO Chrome użył mojego niestandardowego wpisu DNS.