Przeczytałem tutaj kilka istotnych pytań / odpowiedzi, ale wciąż nie jestem pewien, jaka jest najlepsza odpowiedź.
Przenoszę kilka witryn z adresu IP „1.abc” na „2.def”. W tej chwili w istniejącym systemie DNS ustawiłem wszystkie TTL na 300 sekund i mam nową strefę DNS gotową do użycia (na AWS Route 53), z nowymi serwerami nazw i wszystkimi TTL na 60 sekund. Dlatego uważam, że jestem gotowy z perspektywy DNS. Po przeprowadzce, po kilku dniach ustawię TTL na bardziej rozsądne liczby na trasie 53.
Ostrzegłem wszystkich moich użytkowników o przeprowadzce i mam określone okno czasowe na przeprowadzkę. Powiedziałem im, że po zakończeniu przenoszenia i jeśli minęły 24 godziny, a oni nadal widzą stare (zablokowane) witryny, powinni ponownie uruchomić komputer, aby wymusić lokalne opróżnianie pamięci podręcznej DNS.
Nie rozumiem, w jaki sposób przeglądarka użytkownika (pamięć podręczna) odgrywa w tym rolę. Moje własne eksperymenty z plikiem lokalnego hosta (Win7) mówią mi, że w przeglądarce jest coś, co nie pozwala na odejście starego adresu IP - musiałem przejść do historii-> wyczyścić wszystko , aby nowa lokalizacja witryny mogła się wyświetlić w górę, nawet poipconfig /flushdns
(EDYCJA) - Nie mam dostępu root do starego serwera, więc nie mogę zaimplementować przyjętej odpowiedzi na to pytanie .
Pytanie: Naprawdę nie chcę, aby moi użytkownicy musieli sobie z tym poradzić, więc czy mogę coś zrobić, aby zmusić wszystkie przeglądarki do ponownego buforowania? A jeśli tak, to jak długo mam pozostawić włączone?
Dzięki...
My own experiments with a local hosts file (Win7) tell me there is something about the browser that is not letting the old IP address go
Czy możesz podać jakieś informacje na ten temat? Afaik, przeglądarki nie buforują rekordów DNS przez dłużej niż 1 minutę.Odpowiedzi:
Nie możesz. Problem polega na tym, że odpowiedź DNS może być buforowana w dowolnym miejscu między użytkownikiem a serwerem DNS i nie ma możliwości ich unieważnienia.
Co możesz jednak zrobić - gdy tylko zsynchronizujesz dane i Twoja druga strona będzie gotowa, możesz ponownie skonfigurować oryginalny serwer, aby działał jako serwer proxy i przekazywał wszystkie żądania do nowej lokalizacji.
W ten sposób możesz osiągnąć prawie zerowy czas przestoju swojej witryny.
Aktualizacja
Jeśli nie masz dostępu do konta root, istnieje kilka opcji:
Wykonuj proxy w PHP
Skonfiguruj serwer proxy na drugim serwerze (jeśli masz tam dostęp root), zmień DNS, a kiedy będziesz gotowy, zmień serwer proxy na serwer WWW
Ta metoda może być źródłem problemów. Ma 2 adresy (www.domain.tld i www2.domain.tld). Skonfiguruj www2 (to samo co www) i ustaw poprawne rekordy DNS. Następnie przygotuj wersję www swojej witryny i przełączyć DNS. Ustaw przekierowanie wszystkich żądań na starym serwerze do subdomeny www2.
źródło
Teoretycznie ustawienie TTL domeny na coś niskiego i oczekiwanie na zmianę, a następnie zmiana adresu IP, powinno doprowadzić do niemal przezroczystej migracji. W końcu to cały sens konfigurowania TTL.
W praktyce ludzie źle konfigurują rzeczy, a narzędzia psują się. Dlatego może być konieczne podanie instrukcji użytkownikom wyczyszczenia lokalnej pamięci podręcznej, jeśli coś nie działa poprawnie.
Ale nie robisz nic złego.
źródło
Nieuchronnie twój stary adres będzie przechowywany w pamięci podręcznej i używany przez długi czas - głównie przez boty.
Jak bym to zrobił:
www2.yourdomain.com
wskazujący nowy adres IP. Ten rekord nigdy nie powinien był być używany; dlatego nigdy nie buforowane.www2.yourdomain.com
www2.yourdomain.com
nawww.yourdomain.com
.Pamiętaj, aby użyć 301 stałych przekierowań. https://en.wikipedia.org/wiki/HTTP_301
źródło
Wygląda na to, że planujesz jednocześnie zmienić swoje serwery nazw? Ze względu na sposób, w jaki serwery nazw są wykrywane, aktualizacja zajmuje dużo więcej czasu niż zwykły zapis - często około 24 godzin lub dłużej.
Gorąco polecam aktualizację DNS u obecnego dostawcy przed zmianą DNS lub zmianę serwerów nazw na 7 dni przed zmianą adresu IP witryny.
Nowoczesne komputery i przeglądarki są dość niezawodne w przestrzeganiu TTL z DNS, ale aby zrozumieć najlepsze wyniki, musisz zrozumieć cały łańcuch.
źródło