Ajutor pentru repararea unei probleme de redirectare 301
Am avut probleme cu site-ul meu și, ca urmare, am făcut un test de crawl în SEOmoz. Testul a identificat o redirectare 301 Permanent Moved pentru toate paginile site-ului și se pare că acestea sunt redirecționate înapoi către ele însele?
După ce am finalizat un crawl al site-ului meu, am descoperit că există o cantitate mare de date corupte adăugate în URL pentru fiecare dintre aceste pagini: https://www.getyourphotosoncanvas.com/%7Egetyouv4/%7Egetyouv4/contact-us.html 301 redirects to https://www.getyourphotosoncanvas.com/%7Egetyouv4/contact-us.html
Apoi urmează o listă lungă de redirectări, fiecare adăugând o altă linie, de exemplu: domain/7Egetyouv4/%7Egetyouv4/%7Egetyouv4/../%7Egetyouv4/%/contact-us.html
Această parte repetată, %7Egetyouv4
, continuă la infinit... Am scurtat-o pentru postare și am eliminat numele domeniului pentru a evita un al treilea link (limită de postare).
Știu că aceasta trebuie să fie o problemă. Suportul Bluehost spune că nu arată nicio redirectare 301, apoi că ar putea fi o problemă în fișierul WP xmlrpc.php
? Sunt începător în acest domeniu, poate cineva să-mi spună ce înseamnă toate acestea?
Doar pentru a clarifica, nu am setat redirectările, nu am nevoie de redirectări, acest lucru a apărut fără știrea mea. Unii au sugerat un hack?
Mai important, poți să-mi spui cum să o repar?

Știu că acest thread este vechi, dar l-am găsit în căutarea exactă a soluției în martie 2017. Sper ca această soluție să fie remediul care funcționează pentru cineva și să salveze puțină sănătate mintală. Am postat-o pe forumul de suport al temei X, deoarece cerusem ajutor acolo, și am decis că merită o expunere mai largă.
Soluția bizară (pentru mine) a fost să rearanjez cele două părți din fișierul meu .htaccess. Iată pentru oricine se lovește la fel de capul de birou...
Am nevoie ca fișierul .htaccess să facă două lucruri: să direcționeze utilizatorii care navighează pe Domain1.com către instanța WordPress din rădăcina site-ului și să redirecționeze utilizatorii care navighează pe Domain2.com către instanța WordPress dintr-un subdirector numit SubdirectoryName. Secțiunile de cod urmează. Fișierul .htaccess care provoca erori 301 pentru fiecare pagină, cu excepția celei de Acasă, avea metoda de redirecționare ÎNAINTE de metoda WordPress. Am mutat metoda WordPress deasupra metodei de redirecționare din disperare, după ce am dezactivat plugin-uri, am înlocuit o mulțime de URL-uri ale domeniului de dezvoltare rămase cu plugin-ul Better Search Replace și chiar am dezactivat complet .htaccess (nu știam cât de aproape eram cu asta). Site-ul a început să se comporte normal, iar Domain2.com a fost redirecționat conform dorinței.
Morala poveștii este că WordPress pare a fi o divă care cere să fie recunoscută prima.
Structura standard WordPress:
# 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
Cod de redirecționare pentru a trimite Domain2.com către instanța WordPress din SubdirectoryName
# BEGIN redirect to SubdirectoryName
RewriteEngine on
RewriteCond %{HTTP_HOST} ^(www.)?domain2.com$
RewriteCond %{REQUEST_URI} !^/SubDirectoryName/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /SubDirectoryName/$1
RewriteCond %{HTTP_HOST} ^(www.)?domain2.com$
RewriteRule ^(/)?$ SubDirectoryName/index.php
RewriteBase /
RewriteRule ^index.(.*)?$ http://domain2.com/SubDirectoryName/ [r=301]
# END redirect to SubdirectoryName
Nu știu exact ce înseamnă toată acea sintaxă de redirecționare. Nu mai trebuie să învățăm fiecare bucățică de cod, iar ecosistemul WordPress este viu și veget. Mă bucur să plătesc pentru tema X, suport și câteva plugin-uri valoroase pentru a reduce curbă de învățare. Pur și simplu nu mai am timp – sau dorința – să mă joc cu astea în zilele noastre. Am proiectat primul meu site în Notepad, cu câteva butoane și un antet creat în Photoshop, în jurul anilor 1994-1995, pentru a-mi pune lucrarea de licență online – doar ca să văd dacă pot. Atunci TREBUIE să știi fiecare punct și liniuță, dar erau mai puține, și era mai mult o chestiune de cucerire. Puteai, așa cum spunea titlul cărții, „Învață HTML în 24 de ore”.
Sper că acest lucru va ajuta vreo suflet frustrat să mai doarmă câteva ore în plus!

Accesează programul tău de transfer de fișiere (FTP) și caută un fișier numit ".htaccess".
Șterge tot conținutul din el și adaugă următorul cod:
# 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
După ce ai făcut asta, intră în setările de legături permanente (permalinks) și actualizează-le la configurația dorită.

Aceasta poate fi cauzată de diverse probleme: cod defectuos în tema ta, cod defectuos într-un plugin, problemă de configurare în .htaccess
...
Dacă nu știi cum să editezi fișierul .htaccess
, poți începe prin a face următoarele:
- Schimbă tema
- Dezactivează pluginurile
Dacă acestea nu rezolvă problema, probabil este legată de fișierul tău .htaccess
.
Dacă acest lucru rezolvă problema, încearcă să revii la tema originală și verifică dacă problema reapare. Dacă da, este o problemă cu tema. Dacă nu, încearcă să reactivezi pluginurile unul câte unul și testează după fiecare reactivare pentru a identifica care cauzează redirecționarea.
Un lucru pe care îl poți face este să scanezi site-ul cu http://sucuri.net/ pentru a te asigura că nu există fișiere corupte. Dacă totul este curat, începe să fie o problemă mai complexă de depanat.

Mulțumesc pentru răspuns. Sunt începător în acest domeniu! Scuze, cum aș putea șterge acest fișier și nu se menționează înlocuirea lui. Cum ați actualiza opțiunea de permalinkuri?
