"Prea multe redirecționări" DOAR când se încearcă accesarea paginii wp-admin
M-am gândit să-mi pun propria întrebare având în vedere că întrebările duplicate încă nu au primit răspuns.
Din anumite motive, după instalarea proaspătă a WordPress 4.9.1 pe VPS-ul meu Ubuntu, activarea SSL-ului "flexibil" emis de Cloudflare și în final schimbarea URL-urilor în WordPress (de la "https://foo.com" la "https://foo.com") nu mai pot accesa panoul de administrare.
Încercare de Rezolvare #1: Ștergerea cookie-urilor browserului(elor), cache-ului și datelor salvate, precum și orice cache-uri Cloudflare.
Încercare de Rezolvare #2:
Modificarea fișierului wp-config.php
cu codul:
define('WP_HOME' , 'https://foo.com');
define('WP_SITEURL' , 'https://foo.com');
Încercare de Rezolvare #3: Dezactivarea fișierului .htaccess
din /var/www/html/
Niciuna dintre cele de mai sus nu a funcționat și din păcate încă nu pot accesa panoul de administrare. Cu toate acestea, pagina principală implicită WordPress se încarcă fără probleme la URL-ul securizat corect, "https".
Am găsit o soluție care a rezolvat problema mea.
Surse:
A.) https://sharpten.com/blog/2018/01/17/wordpress-stuck-many-redirects-error-loop-using-ssl.html
B.) (Sub-legătură în cadrul lui A) https://wordpress.org/support/article/administration-over-ssl/
Fragment:
Adăugarea următoarelor linii de cod la sfârșitul fișierului meu wp-config.php
a rezolvat conflictul de redirecționare.
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
$_SERVER['HTTPS']='on';


În caz că mai cineva dă peste asta - aceste două linii au funcționat pentru mine, dar doar dacă le-am plasat la începutul fișierului wp-config.php
.

Dacă cele de mai sus nu au ajutat, puteți încerca să adăugați următoarea linie deasupra:
define('FORCE_SSL_ADMIN', true); și/sau: "SetEnvIf X-Forwarded-Proto https HTTPS on the top" (fără ghilimele, în partea de sus a fișierului înainte de orice altceva) în fișierul .htaccess

Dacă utilizați Cloudflare, setați modul de criptare SSL/TLS la Full. Asta e tot! Va funcționa perfect.

Mulțumesc! A funcționat pentru mine. Ar trebui apoi ștearsă linia sau să o păstrez?

Acest răspuns nu a funcționat pentru mine, nici soluția de la @S1awek

Problema mi s-a întâmplat când am dezactivat pluginul Cloudflare, deoarece aveam o eroare cu el și a trebuit să-l resetez și să mă autentific din nou. Adăugarea acestui cod în partea de sus a fișierului wp-config a rezolvat problema și am putut intra și reactiva pluginul Cloudflare, apoi l-am eliminat din wp-config fără probleme.

Mulțumesc @JakirHossain! Schimbarea setării SSL/TLS în Cloudflare de la Flexible
la Full
a funcționat pentru mine. Pare o alegere mai bună decât modificarea manuală a wp-config.php
, decât ca ultimă soluție.

Am folosit răspunsul lui Matt de mai sus și am adăugat și un caz else:
if (strpos($_SERVER['HTTP_X_FORWARDED_PROTO'], 'https') !== false)
$_SERVER['HTTPS']='on';
else
$_SERVER['HTTPS']='off';
A funcționat. Am plasat codul și la începutul fișierului wp-config.php

a funcționat. De asemenea, trebuie adăugat în partea de sus după <?php
, altfel va genera o eroare de acces la permisiuni în timpul accesării wp-admin

Această soluție a funcționat pentru mine, în timp ce varianta fără else nu a funcționat.

Puneți acest cod în wp-config.php
în prima linie din interiorul tag-ului PHP.
if($_SERVER['PHP_SELF']=="/index.php")
{
define('WP_HOME','https://yourdomain.com');
define('WP_SITEURL','https://yourdomain.com');
}
else
{
define('WP_HOME','http://yourdomain.com');
define('WP_SITEURL','http://yourdomain.com');
}
Dar nu uitați să înlocuiți URL-ul site-ului dumneavoastră în locul yourdomain.com

Într-un fel, permisiunile folderului wp-admin au fost setate la 777, ceea ce înseamnă că oricine poate citi, scrie sau executa în acest folder.
Ne-am conectat pe server și am găsit o eroare care spunea "wp-admin nu poate fi scris de grup."
Am schimbat permisiunile astfel încât folderul să nu fie scris de grup sau de lume (755), iar zona de administrare a devenit imediat accesibilă.
(Această modificare a permisiunilor s-a întâmplat aparent aleatoriu pentru noi. Echipa site-ului nostru nici măcar nu avea acces la server în momentul în care wp-admin a încetat să funcționeze și încă nu știm cum a fost schimbată această setare. Site-ul funcționa de câțiva ani înainte de această problemă.)

Am avut aceeași problemă și am găsit mai multe foldere cu permisiuni 775: wp-admin, wp-content, wp-includes. Le-am schimbat la 755 și acum sunt în procesul de scanare malware pentru a mă asigura că nu se întâmplă nimic rău intenționat. Mulțumesc!

Am întâmpinat eroarea 'Too many redirects' doar în zona wp-admin după migrarea pe un server nou.
Problema a fost generată de permisiuni incorecte setate pe directorul wp-admin și fișierele de nivel superior din el. Resetarea permisiunilor a rezolvat problema.
Sper că această informație va fi utilă pentru cei care au nevoie de ea.

În cazul meu, problema a fost legată de setarea DirectoryIndex
din Apache. Pagina wp-admin
era accesibilă doar prin wp-admin/index.php
, dar nu și prin simplu wp-admin
, afișând eroarea ERR_TOO_MANY_REDIRECTS
.
Se pare că setarea DirectoryIndex
din Apache poate fi configurată "incorect". Încercați să resetați această setare în partea de sus a fișierului .htaccess
:
DirectoryIndex index.php
Vedeți răspunsul complet aici. Nu pot accesa panoul de administrare cu wp-admin fără /index.php după el
