[FIX] ERR_TOO_MANY_REDIRECTS na WordPress (2021)

Widzimy wiele różnych błędów WordPressa na CollectiveRay, a jednym z nich jest ERR_TOO_MANY_REDIRECTS (znany również jako pętla przekierowania).

Zwykle dzieje się tak w wyniku nowej aktualizacji platformy WordPress, błędnej konfiguracji przekierowań na serwerze lub nieodpowiednich konfiguracji dla dostawców zewnętrznych. Ale nie martw się, ten błąd jest dość prosty do naprawienia.

Zapoznaj się z poniższymi wskazówkami, jak rozwiązać ten błąd i ponownie uruchomić witrynę.

Co to jest błąd err_too_many_redirects?

Powód wyzwolenia ERR_TOO_MANY_REDIRECTS jest łatwo odzwierciedlony w samym błędzie. Coś (błędna konfiguracja) powoduje nieproporcjonalną liczbę przekierowań (zbyt wiele przekierowań), powodując, że witryna przechodzi w ciągłą pętlę przekierowań.

Zasadniczo serwer jest w pułapce (na przykład URL 1 wskazuje na URL 2, a URL 2 wskazuje z powrotem na URL 1 lub domena przekierowała Cię zbyt wiele razy). Ten typ błędu jest zazwyczaj nieprawidłową konfiguracją systemu, więc trudno jest rozwiązać te błędy samodzielnie.

Dlatego przygotowaliśmy przewodnik, który krok po kroku pokazuje, jakie kroki należy podjąć, aby rozwiązać ten problem.

W zależności od używanej przeglądarki istnieje kilka różnych wariantów tego ostrzeżenia/błędu.

ERR_TOO_MANY_REDIRECTS Chrome


Ten błąd będzie wyświetlany w przeglądarce Google Chrome jako ERR_TOO_MANY_REDIRECTS (jak widać poniżej) lub ta strona ma problem z pętlą przekierowań.

Ta strona nie działa. example.com przekierowywało Cię zbyt wiele razy. Spróbuj wyczyścić pliki cookie. ERR_TOO_MANY_REDIRECTS

Jaki jest błąd zbyt wielu przekierowań

Inne problemy z Google Chrome, które można łatwo naprawić dołącz ostrzeżenie err_cache_miss.

Microsoft Edge Browser

W przeglądarce Microsoft Edge będzie to po prostu wyświetlane jako Ta strona w tej chwili nie działa (jak widać poniżej).

example.com przekierowywało Cię zbyt wiele razy.

Jaki jest błąd zbyt wielu przekierowań error1

Firefox

W przeglądarce Mozilla Firefox będzie to wyświetlane jako Strona nie przekierowuje prawidłowo (jak widać na zrzucie ekranu poniżej).

Wystąpił błąd podczas połączenia z example.com. Ten problem może czasami być spowodowany wyłączeniem lub odmową akceptowania plików cookie.

Jaki jest błąd zbyt wielu przekierowań error2

safari

W przeglądarce Safari błąd będzie wyświetlany jako Safari nie może otworzyć strony (sprawdź zrzut ekranu).

Podczas próby otwarcia „example.com” wystąpiło zbyt wiele przekierowań. Może się tak zdarzyć, jeśli otworzysz stronę, która jest przekierowywana w celu otwarcia innej strony, która jest następnie przekierowywana w celu otwarcia strony oryginalnej.

 Oto kilka wskazówek i problemów, które można znaleźć, aby pomóc w rozwiązaniu błędu (posortowane według najczęstszych wyjaśnień, które widzimy):

  1. Usuń lub wyczyść pliki cookie w tej konkretnej witrynie
  2. Wyczyść wszystkie pamięci podręczne w witrynie WordPress (wtyczka, serwer, serwer proxy i pamięć podręczna przeglądarki)
  3. Określ charakter pętli przekierowań
  4. Sprawdź, czy masz prawidłowe ustawienia HTTPS
  5. Sprawdź wszelkie usługi innych firm
  6. Sprawdź ustawienia swojej witryny WordPress
  7. Tymczasowo wyłącz wtyczki WordPress, dopóki nie rozwiążesz problemu
  8. Sprawdź, czy na Twoim serwerze nie ma przekierowań

Jak naprawić ERR_TOO_MANY_REDIRECTS 

1. Usuń pliki cookie przeglądarki dla tej konkretnej witryny

Jak widzieliśmy na powyższych zrzutach ekranu, zarówno Google, jak i Mozilla radzą tuż pod błędem „spróbuj wyczyścić pliki cookie”.

Pliki cookie mogą ulec uszkodzeniu i zawierać błędne dane, co skutkuje błędem ERR TOO MANY REDIRECTS. Jest to poprawka, którą powinieneś wypróbować, nawet jeśli otrzymujesz błąd na platformie lub witrynie, której nie jesteś właścicielem.

Ponieważ pliki cookie utrzymują stan „zalogowania” i inne ustawienia w witrynie, sugerujemy po prostu usunięcie plików cookie z witryny, która powoduje problem. W ten sposób nie spowodujesz żadnych problemów z żadną inną sesją witryny lub regularnie odwiedzanymi witrynami.

Aby usunąć plik cookie z określonej witryny w przeglądarce Google Chrome, wykonaj poniższe czynności.

  1. Kliknij trzy małe kropki w prawym górnym rogu przeglądarki Google Chrome. Następnie wybierz „Ustawienia”.
  2. Przewiń w dół i wybierz „Zaawansowane”.
  3. Kliknij „Ustawienia treści”.
  4. Wybierz „Cookies”.
  5. Następnie wybierz „Zobacz wszystkie pliki cookie i dane witryn”.
  6. Poszukaj witryny (domeny), która wyzwala ostrzeżenie ERR_TOO_MANY_REDIRECTS. Pliki cookie aktualnie zapisane na Twoim komputerze dla tej domeny zostaną następnie usunięte. Następnie wróć do serwisu i odśwież stronę.

Jeśli problem był spowodowany przez pliki cookie przeglądarki, błąd nie zniknie, a strona załaduje się poprawnie.

2. Wyczyść pamięć podręczną serwera, proxy i przeglądarki

Ponieważ pętle przekierowań mogą być wyzwalane przez buforowanie odpowiedzi, zawsze dobrym pomysłem jest wyczyszczenie pamięci podręcznej na koncie WordPress, serwerze, serwerach proxy innych firm, a nawet w przeglądarce, jeśli jest to wymagane.

W zależności od typu pętli przekierowań nadal możesz mieć dostęp do pulpitu administracyjnego WordPress. W takim przypadku możesz wygodnie opróżnić lub wyczyścić pamięć podręczną w ustawieniach wtyczki buforowania. 

Oto krótki przewodnik, jak wyczyścić pamięci podręczne w różnych elementach infrastruktury, które mogą mieć pamięć podręczną. Być może będziesz musiał sprawdzić, jakie wtyczki są uruchomione w Twojej witrynie lub czy istnieje inna platforma pamięci podręcznej, o której nie wspomnieliśmy poniżej. 

Upewnij się, że wyczyściłeś, opróżniłeś lub wyczyściłeś pamięci podręczne w każdym składniku pamięci podręcznej.

Wyczyść pamięć podręczną witryny WordPress

Jeśli buforujesz swoją witrynę za pomocą wtyczki buforującej WordPress, takiej jak W3C, SuperCacher lub nawet WP Rocket, opróżnianie pamięci podręcznej tych wtyczek jest zwykle bardzo proste i jest to coś, co prawdopodobnie zrobiłeś kilka razy. 

Po prostu postępuj zgodnie ze zwykłą procedurą, aby wyczyścić odpowiednią wtyczkę pamięci podręcznej.

Wyczyść pamięć podręczną serwera

Niektóre zarządzane usługi hostingowe WordPress, takie jak Kinsta, WPEngine, Nexcess or SiteGround mieć własne buforowanie na poziomie serwera. Wszystkie z nich mają własne procedury, które należy wykonać, aby opróżnić pamięci podręczne. Powinno to być łatwo dostępne za pośrednictwem pulpitu hostingowego.

Wyczyść pamięć podręczną CDN lub proxy

Jeśli korzystasz z usługi odwrotnego serwera proxy innej firmy, takiej jak Cloudflare or Sucuri, pomocne może być również wyczyszczenie pamięci podręcznej na ich końcu. Chociaż nie wszystkie CDN działają jako serwery proxy, jeśli korzystasz z CDN, możesz również chcieć opróżnić lub wyczyścić pamięć podręczną tutaj. 

  • Zaloguj się do pulpitu nawigacyjnego Cloudflare, przejdź do „Caching”, a następnie naciśnij „Wyczyść wszystko”.
  • Zaloguj się do pulpitu nawigacyjnego Sucuri, przejdź do „Wydajność”, a następnie naciśnij „Wyczyść pamięć podręczną”.

 

Wyczyść pamięć podręczną przeglądarki

Jeśli chcesz sprawdzić, czy przyczyną problemu jest lokalna pamięć podręczna przeglądarki, możesz otworzyć przeglądarkę w trybie incognito bez usuwania pamięci podręcznej. Możesz też użyć innej przeglądarki, aby sprawdzić, czy błąd ERR_TOO_MANY_REDIRECTS nadal występuje.

Jeśli stwierdzisz, że jest to spowodowane pamięcią podręczną przeglądarki, musisz ją wyczyścić. Oto wskazówki, jak to zrobić w różnych przeglądarkach:

Wyczyść pamięć podręczną, pliki cookie i historię przeglądarki internetowej

Określ typ pętli przekierowania


Jeśli wyczyszczenie pamięci podręcznej nie zadziałało, spróbuj dowiedzieć się, co powoduje pętlę przekierowania. HTTPStatus.io - bezpłatne narzędzie do sprawdzania przekierowań online pomoże w dalszej analizie tego, co dzieje się na zapleczu.

Można to również osiągnąć za pomocą cURL.

Na przykład w poniższej witrynie znajduje się pętla przekierowań 301 z powrotem do siebie, co skutkuje długim łańcuchem wadliwych przekierowań. Powinieneś śledzić wszystkie przekierowania i sprawdzić, czy jest to pętla z powrotem do siebie, czy jest to pętla HTTP do HTTPS, którą omówimy poniżej.

Przekierowanie 301
https://example.com
Przekierowanie 301
https://example.com
Przekierowanie 301
https://example.com
Przekierowanie 301
https://example.com

Pandemia Rozszerzenie Ścieżka przekierowania do Chrome jest również bardzo pomocny, ponieważ oferuje informacje o wszelkich przekierowaniach, które występują w Twojej sieci (określony adres URL lub strona).

Sprawdź konfigurację HTTPSS


Kolejną rzeczą do sprawdzenia jest konfiguracja HTTPS. Widzieliśmy, że ERR_TOO_MANY_REDIRECTS pojawia się często, gdy ktoś właśnie przeniósł swoją platformę WordPress na HTTPS, a następnie nie dokończył poprawnie konfiguracji.

1. Nie wymuszaj HTTPS, jeśli nie masz zainstalowanego certyfikatu SSL.


To zdecydowanie najpopularniejsze wyjaśnienie, którego doświadczamy bardzo często. Jeśli zmusisz witrynę WordPress do ładowania przez HTTPS bez uprzedniego skonfigurowania certyfikatu SSL, Twoja witryna automatycznie utworzy pętlę przekierowań. Aby rozwiązać ten problem, po prostu zainstaluj certyfikat SSL na koncie swojej witryny WordPress. Możesz użyć albo certyfikatu kupionego komercyjnie, albo użyć Szyfrujmy jeśli jest to obsługiwane przez konfigurację hostingu.

Dobrym pomysłem jest również prowadzenie Skanowanie SSL (z Qualys SSL Labs) w Twojej witrynie. Certyfikaty SSL/TLS wymagają instalacji nie tylko certyfikatu podstawowego, ale także tak zwanych certyfikatów pośrednich (łańcuchowych). Muszą one być poprawnie zainstalowane, w przeciwnym razie Twoja konfiguracja nie będzie poprawna i może powodować różnego rodzaju problemy.

Po prostu przejdź do sprawdzania SSL, do którego link znajduje się powyżej, wprowadź swoją domenę w polu Nazwa hosta i naciśnij „Prześlij”. Możesz nie udostępniać wyników skanowania publicznie. Pamiętaj, że skanowanie konfiguracji SSL/TLS Twojej witryny na serwerze internetowym może zająć minutę lub dwie.

Dostępnych jest kilka darmowych wtyczek SSL WordPress, takich jak Really Simple SSL plugin, który pomoże Ci w automatycznym przekierowywaniu na HTTPS.

Nie sugerujemy jednak tego podejścia jako długoterminowego rozwiązania, ponieważ wtyczki innych firm mogą wprowadzać nowe błędy lub powodować inne problemy z wydajnością. Chociaż może to być łatwe tymczasowe obejście, należy nadal starać się przekonwertować zakodowane na stałe linki HTTP:// na HTTPS://.

Możesz to osiągnąć za pomocą narzędzia takiego jak Lepsze wyszukiwanie Zastąp w WordPressie lub skontaktuj się z zespołem wsparcia hostingu, aby się tym zająć.

3. Sprawdź wszystkie przekierowania HTTP na HTTPS na serwerze

Innym powodem błędu może być błędna konfiguracja reguł przekierowań HTTPS na serwerze.

Jeśli na Twoim serwerze internetowym działa Nginx, możesz łatwo przekierować cały ruch HTTP do HTTPS, stosując następujący kod do pliku konfiguracyjnego Nginx. Jest to preferowane podejście do przekierowywania WordPressa na Nginx.

server { listen 80; server_name example.com www.example.com; return 301 https://example.com$request_uri; }

Jeśli masz serwer WWW Apache, możesz również łatwo przekierować cały ruch HTTP do HTTPS, stosując następujący kod do pliku .htaccess. Jest to preferowane podejście do przekierowywania WordPressa za pomocą serwera Apache.

RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

4. Sprawdź, czy nie ma zbyt wielu przekierowań HTTPS

Inną możliwością jest to, że masz zbyt wiele przekierowań HTTPS. Możesz użyć Mapowanie przekierowań funkcja, aby szybko określić, ile przekierowań ma Twoja witryna. Poniżej znajduje się przykład przekierowania, które nie zostało poprawnie skonfigurowane i można je łatwo znaleźć za pomocą mapera przekierowań. Jak widać, istnieją zduplikowane przekierowania HTTPS zarówno w wersji z www, jak i bez niej.

Przekierowania https nie są poprawnie skonfigurowane

 

Sprawdź usługi innych firm

Błąd ERR_TOO_MANY_REDIRECTS jest często wywoływany przez usługi zwrotnego proxy, takie jak Cloudflare lub inne usługi zwrotnego proxy.

To może się zdarzyć, gdy ich opcja Flexible SSL jest włączona i masz już zainstalowany certyfikat SSL na swoim hoście WordPress.

Dlaczego tak się dzieje?

Po wybraniu elastycznego protokołu SSL wszystkie żądania do serwera hostingowego są wysyłane przez HTTP. Ponieważ serwer hosta ma już przekierowanie z HTTP do HTTPS, pojawia się pętla przekierowania.

Aby rozwiązać ten problem, zmień ustawienia Cloudflare Crypto z Elastyczne na Pełne lub Pełne (ścisłe).

Powinieneś użyć ich reguły strony Zawsze używaj HTTPS, aby automatycznie przekierowywać wszystkich użytkowników do HTTPS bez powodowania pętli. Inną kwestią, o której należy pamiętać w przypadku Cloudflare, są reguły przekierowania adresu URL przekierowania.

Pamiętaj, aby nie tworzyć przekierowania, w którym domena odnosi się do siebie jako miejsca docelowego. Spowoduje to nieskończoną pętlę przekierowań, a adresy URL, których to dotyczy, nie będą mogły zostać poprawnie rozwiązane.

Jeśli wolisz używać tylko DNS Cloudflare, a nie ich usługi proxy/WAF, upewnij się, że Twoje rekordy DNS są ustawione na „Tylko DNS”. Ikona chmurki będzie wyglądać na „niebieską”, a nie „pomarańczową”. Można to zobaczyć w panelu sterowania Cloudflare w zakładce „DNS”.

Jeśli używasz StackPath, upewnij się, że opcja „Origin Pull Protocol” jest ustawiona tylko na HTTPS.

Sprawdź konfigurację swojej witryny WordPress


Kolejną rzeczą, na którą należy zwrócić uwagę, są ustawienia witryny WordPress. Będziesz chciał dokładnie sprawdzić, czy dwa pola są ustawione prawidłowo i nie odnoszą się do tej samej domeny lub są niezgodne. Innym typowym problemem jest niestosowanie właściwego prefiksu pasującego do reszty domeny, niezależnie od tego, czy zawiera www, czy nie. Gdy ludzie migrują hosty lub zmieniają domeny, te ustawienia mogą zostać zmienione bez Twojej wiedzy.

  • Adres WordPressa (URL): Adres URL prowadzący do Twojej witryny.
  • Adres URL witryny (jednolity lokalizator zasobów): Lokalizacja Twoich podstawowych plików WordPress.


Powinny się zgadzać, unless WordPress jest używany w swoim własnym katalogu.

Jeśli te ustawienia nie są poprawnie skonfigurowane, nie będziesz mieć dostępu do pulpitu WordPress. Możesz więc obejść powyższe ustawienia, zmieniając wartości w pliku wp-config.php.

Plik wp-config.php zwykle znajduje się w katalogu głównym witryny WordPress i można do niego uzyskać dostęp za pośrednictwem FTP, SSH lub WP-CLI. Po prostu dodaj następujący kod na górze pliku, aby na stałe zakodować WP_HOME i WP_SITEURL, modyfikując wartości, aby odzwierciedlały Twoją domenę.

define('WP_HOME','https://example.com');
define('WP_SITEURL','https://example.com'); 

Sprawdź konfigurację swojej witryny WordPress

 
Po ręcznym skonfigurowaniu tych dwóch wartości możesz odwiedzić swoją witrynę i sprawdzić, czy rozwiązuje ona pętlę przekierowań.

Wielostronna WordPress

Przenosząc domeny w wielu witrynach, upewnij się, że przeszukałeś również tabelę wp_blogs. Jeśli wykonasz nieprawidłowe wyszukiwanie i zamianę, może to spowodować nieskończoną pętlę przekierowań. Wynika to z niezgodności witryny sieciowej z podwitrynami.

wp_#_opcje: Dla każdej podwitryny zostanie wygenerowana seria tabel odpowiadających identyfikatorowi bloga w tabeli wp blogs. Zaktualizuj „STRONA URL"I"STRONA GŁÓWNA” ustawienia w wp_#_opcje tabeli, gdzie # odnosi się do identyfikatora bloga.

Tymczasowo wyłącz wtyczki WordPress

Jeśli chodzi o WordPress, krótkie usunięcie wszystkich wtyczek WordPress może być szybkim sposobem na zidentyfikowanie problemów. Przekierowania, na przykład, mogą być realizowane za pomocą wtyczek takich jak Redirection lub Yoast SEO premium. Często wszelkie zmiany w konfiguracji lub inne modyfikacje tych wtyczek kolidują z przekierowaniami, które są już na Twoim serwerze, co skutkuje pętlą przekierowań.

Pamiętaj, że samo wyłączenie wtyczki nie spowoduje utraty danych, więc jest to dość wolna od ryzyka poprawka. Jeśli nie możesz skontaktować się z administratorem WordPress, musisz połączyć się z serwerem przez SFTP i zmienić nazwę folderu wtyczek na coś w rodzaju starych wtyczek. Następnie dokładnie sprawdź swoją witrynę, aby zobaczyć, czy pętla przekierowań zniknęła.

Jeśli to zadziała, będziesz musiał zweryfikować każdą wtyczkę pojedynczo i sprawdzić, czy to ona powoduje problem. Zmień nazwę folderu wtyczek z powrotem na „wtyczki”, a następnie zmień nazwę każdego folderu wtyczek w nim jeden po drugim, aż znajdziesz ten, który powoduje problem.

Możesz najpierw przetestować to na stronie testowej. 

Sprawdź wszystkie istniejące przekierowania serwera


Oprócz przekierowań HTTP do HTTPS na Twoim serwerze, dobrze jest dokładnie sprawdzić, czy nie ma innych niepoprawnie skonfigurowanych przekierowań. Na przykład pojedyncze złe przekierowanie 301 z powrotem do siebie może spowodować awarię witryny. Są one zwykle zawarte w plikach konfiguracyjnych serwera.

Plik .htaccess w Apache

Jeśli korzystasz z hosta WordPress opartego na Apache, prawdopodobnie plik .htaccess zawiera nieprawidłową konfigurację. Aby stworzyć nowy od podstaw, wykonaj poniższe czynności.

Połącz się ze swoją witryną za pomocą FTP lub SSH i zmień nazwę pliku .htaccess na .htaccess-old. Oznacza to, że nadal masz kopię zapasową starej konfiguracji.

Zwykle powinieneś łatwo zapisać swoje permalinki w WordPressie, aby przywrócić ten plik.

Jeśli jednak widzisz błąd ERR_TOO_MANY_REDIRECTS, nie będziesz mógł zalogować się do administratora WordPressa, więc nie jest to dostępna opcja. W rezultacie powinieneś utworzyć nowy plik .htaccess z następującym kodem. W poniższym przykładzie zastosowano ustawienia domyślne.

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress


Więcej przykładów, takich jak domyślny plik .htaccess dla wielu witryn, można znaleźć w WordPress Codex

Konfiguracja Nginx


Jeśli Twój serwer korzysta z Nginx, ta konfiguracja może być nieco trudniejsza do znalezienia, ponieważ plik konfiguracyjny różni się w zależności od usługi hostingowej. Zalecamy skontaktowanie się z hostem i poproszenie go o przeszukanie pliku konfiguracyjnego w poszukiwaniu czegoś, co może powodować pętlę przekierowań lub nadmierną liczbę przekierowań.

Odwrotne serwery proxy, które są źle skonfigurowane

Innym częstym źródłem błędu ERR_TOO_MANY_REDIRECTS jest użycie zwrotnego serwera proxy. Odwrotne serwery proxy mogą być bardzo kłopotliwe, a jeśli są nieprawidłowo skonfigurowane, dość łatwo jest wprowadzić witrynę WordPress w pętlę przekierowań.

Owijanie w górę

Pętle przekierowań mogą być czasami trudne do znalezienia. Jednak niektóre z opisanych powyżej środków rozwiązywania problemów pomogą w rozwiązaniu błędu ERR_TOO_MANY_REDIRECTS. Jeśli coś przeoczyliśmy, daj nam znać w sekcji komentarzy poniżej.

O autorze
Shahzad Saeed
Autor: Shahzad SaeedStrona internetowa: http://shahzadsaeed.com/
Shahzaad Saaed był opisywany w wielu witrynach autorytetów jako ekspert od WordPressa. Specjalizuje się w content marketingu, aby pomóc biznesowi zwiększyć ruch.

Jeszcze jedna rzecz... Czy wiesz, że osoby, które udostępniają przydatne rzeczy, takie jak ten post, również wyglądają NIESAMOWITE? ;-)
Proszę zostaw użyteczny skomentuj swoje przemyślenia, a następnie udostępnij to na swoich grupach na Facebooku, które uznają to za przydatne i wspólnie zbierzmy korzyści. Dziękuję za udostępnienie i bycie miłym!

Ujawnienie: Ta strona może zawierać linki do zewnętrznych witryn produktów, które kochamy i gorąco polecamy. Jeśli kupisz sugerowane przez nas produkty, możemy otrzymać opłatę za polecenie. Takie opłaty nie wpływają na nasze rekomendacje i nie przyjmujemy płatności za pozytywne recenzje.

Autorzy promowani w:  Inc Czasopismo Logo .   Logo Sitepoint   Logo CSS Tricks    logo webdesignerdepot   Logo WPMU DEV   i wiele więcej ...