it-swarm.com.de

Fehler bei der Anmeldung von Wordpress-Administratoren blockiert, nachdem Server verschoben wurden

Hintergrund: hatte eine funktionierende Wordpress 3.7-Website unter olddomain.com.

Ich habe es erfolgreich auf newdomain.com verschoben und dabei wp-config hinzugefügt:

define('WP_HOME','http://newdomain.com');
define('WP_SITEURL','http://newdomain.com');

Wenn ich jetzt versuche, mich über newdomain.com/wp-admin anzumelden, erhalte ich den Browserbrowser-Fehler (obwohl Cookies aktiviert sind und vorhandene Cookies gelöscht wurden):

ERROR: Cookies are blocked or not supported by // your browser. 
You must enable cookies to use WordPress.

Ich habe versucht, in wp-login.php zu gehen und die folgenden Zeilen (744-747) zu kommentieren, um die bedingte Testcookie-Prüfung zu beenden

    // If cookies are disabled we can't log in even with a valid user+pass
if ( isset($_POST['testcookie']) && empty($_COOKIE[TEST_COOKIE]) )
    $user = new WP_Error('test_cookie', __("<strong>ERROR</strong>: Cookies are blocked or not supported by // your browser. You must <a href='http://www.google.com/cookies.html'>enable cookies</a> to use WordPress."));
else
    $user = wp_signon('', $secure_cookie);

aber damit bleibt ich in einer Umleitungsschleife zurück auf der Administrationsseite:

http://myapp.com/wp-login.php?redirect_to=http%3A%2F%2Fmyapp.com%2Fwp-admin%2F&reauth=1

Muss ich die Site-URL ändern (oder nicht festlegen)? oder gibt es eine andere Möglichkeit, dies zu beheben? Vielen Dank 

18
Chris B.

Nachdem Sie Hunderte von WP -Standorten migriert haben, sind hier einige Gedanken:

Wenn Sie die Datenbank migrieren: Überprüfen Sie in der Datenbankoptionstabelle (wahrscheinlich wp_options) in der Spalte "option_name", dass für "siteurl" und "home" der richtige "option_value" für Ihre Site angegeben ist. "siteurl" ist riesig.

Ich kann bezeugen, dass die Optionstabelle Tweak das absolute Minimum ist, um eine Datenbank in eine neue Domäne in WP zu migrieren. (wird keine Umleitung verursachen, hat aber noch Probleme)

WP sucht nach diesen DB-Optionen, um die Site in eine Domäne zu serialisieren, und ich bin mir ziemlich sicher, dass die Definitionen im Stack niedriger sind und keine Hilfe bieten. Betrachten Sie die wp-admin-Aktivitäten als lose nach vorne gekoppelt. Sie können alles in der Front kaputt machen (erledigt) und der Admin wird weiterhin funktionieren.

Hat auch die Site mit generischer Installation/keine Migration oder Änderungen funktioniert? 

Wie bereits erwähnt - .htaccess (fehlt oder falsch konfiguriert) führt zu einem Fehler. In Bezug auf die .htaccess-Datei ist dies, falls verwendet, eine dot.file, und viele Betriebssysteme "ignorieren" oder "machen unsichtbar", so dass eine Copy/Paste- oder FTP-Anwendung oder ähnliches die .htaccess-Datei nicht enthalten kann

(ziemlich sicher in diesem Punkt) Wenn Sie die Datenbank verschoben und hübsche URLs verwendet haben und den .htaccess verpasst haben, könnten Sie alles, was Sie reparieren müssen. Ich habe gerade lokal auf einer Sandbox-Installation getestet, und die Spalte "option_name" der Spalte "option_name" (Wert "permalink_structure") wird in der Spalte "option_value" in den Status "p = 1 (nicht-permalink)" zurückgesetzt.

23
Marc

füge wp-config.php hinzu

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', ''); 

originalquelle http://wordpress.org/support/topic/cookie-error-site-not-letting-me-log-in

30
max4ever

Das hat bei mir funktioniert.

  1. Entfernen Sie //define('COOKIE_DOMAIN', 'www.domain.com'); in Ihrer wp-config.php
  2. Stellen Sie sicher, dass alle Dateien das ANSI-Format und nicht utf-8 haben
5
juan.conde

Dieser Fehler tritt auch beim Verschieben einer Installation mit mehreren Standorten in eine neue Domäne auf, wenn Sie alle Optionen in der Datenbanktabelle aktualisieren (normalerweise wp_options). Vergessen Sie jedoch nicht, die Zeile DOMAIN_CURRENT_SITE in wp-config.php zu ändern:

define( 'DOMAIN_CURRENT_SITE', 'yourdomain.com' );
4
guico

Ich habe den gleichen Fehler bekommen.

Ich hatte Home und SiteURL in der wp-config.php für eine brandneue Website hartcodiert - es wurden keine Plugins installiert. 

Das Problem: Ich hatte ein Leerzeichen am Ende der URL.

define('WP_HOME','http://100.000.000.01/~acctname/wp ');
define('WP_SITEURL','http://100.000.000.01/~acctname/wp ');

Durch das Entfernen des Speicherplatzes wurde dieser Fehler behoben.

define('WP_HOME','http://100.000.000.01/~acctname/wp');
define('WP_SITEURL','http://100.000.000.01/~acctname/wp');
3
user3186106

dieser Fehler hat mich die letzten Tage verrückt gemacht, also dachte ich, nachdem ich ihn repariert hatte, um ihn mit euch zu teilen! Das Problem war, als ich versuchte, mich in mein WordPress-Backend einzuloggen. Ich bekam diesen nervigen Cookie-Fehler.

  1. Gehen Sie zu Ihrem FTP und Ihrer Domain.
  2. Danach gehen Sie zu Ihrem WP-Inhalt
  3. Gehen Sie zu Ihrem Themenordner
  4. Wählen Sie das aktive Thema
  5. Suchen Sie nach functions.php von Ihrem Teem und öffnen Sie es
  6. Am Ende des Codes sollten Sie das schließende Tag sehen. P> Entfernen Sie einfach das Leerzeichen und speichern Sie es!
  7. Wechseln Sie zu Ihrer Domain.com/wp-login.php
  8. und versuchen Sie sich einzuloggen, sollte es behoben werden. Danach können Sie das Tag wieder dort ablegen, wo es sich befand, und es wieder speichern

Prost!

3
Giorgi Khokho

Ich habe das aufgrund meines Caching-Plugins erlebt.

W3 Total Cache hat meiner Datei wp-config.php Folgendes hinzugefügt:

define('COOKIE_DOMAIN', 'www.olddomain.com'); // Added by W3 Total Cache

Da es hart codiert war, wurde es nicht auf die neue Site-Domäne aktualisiert. Nachdem ich den hinzugefügten Code gelöscht hatte (weil ich das Plugin derzeit nicht verwende), konnte ich mich erneut anmelden. 

Ich würde in der wp-config.php nach dem "Cookie" von Word suchen, um zu sehen, ob ein Plugin möglicherweise etwas ähnliches hinzugefügt hat.

3
Ricky A.

Ich wurde gegoogelt und habe alle Möglichkeiten ausprobiert, um dieses Cookie-Problem zu beseitigen. Schließlich habe ich zwei Lösungen gefunden, die Ihnen helfen könnten.

Lösung 1:

yoursite/wp-login.php

Kommentar folgende Zeilen 770-773

Code

if ( isset($_POST['testcookie']) && empty($_COOKIE[TEST_COOKIE]) )
    $user = new WP_Error('test_cookie', __("<strong>ERROR</strong>: Cookies are blocked or not supported by your browser. You must <a href='http://www.google.com/cookies.html'>enable cookies</a> to use WordPress."));
else
    $user = wp_signon('', $secure_cookie);

Es funktioniert möglicherweise für einige Websites und einige Websites zeigen möglicherweise leere Seiten an. Darüber hinaus wird dies nicht empfohlen, da diese Datei nach dem WordPress-Update überschrieben werden kann. Versuchen Sie es daher mit der zweiten Lösung.

Lösung 2:

yoursite/wp-content/themes/yourthemeOrdner/funktionen.php

Geben Sie den folgenden Code ein.

 setcookie(TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN);
if ( SITECOOKIEPATH != COOKIEPATH )
    setcookie(TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN);

Bei der Aktualisierung Ihres Designs können diese Änderungen ebenfalls verloren gehen. Platzieren Sie diesen Code in einer anderen functions.php, die sich unter Ihrem Child-Theme-Ordner in Ihrem derzeit aktiven Theme befindet. Hoffe, das wird dir helfen. 

2
Raj Ravuri

Ich hatte das gleiche Problem und nichts funktioniert. Nach dem Upgrade meines PHP 5.3.x auf 5.4.x funktioniert es einwandfrei.

1
Jewel

Ich hatte das gleiche Problem mit sehr ähnlichen Umständen und Spezifikationen.

Nachdem ich alle möglichen Lösungen ausprobiert hatte, die im Internet vorgeschlagen wurden, benannte ich mein aktives Thema einfach über FTP und konnte mich dann beim Dashboard anmelden. Ich habe mein Thema umbenannt und alles hat funktioniert Probleme, die sie haben.

1
David Alsbright

Angenommen, Sie laufen auf einer Plattform vom Typ Unix/Linux. Stellen Sie sicher, dass Sie Ihre .htaccess-Datei von Ihrem ursprünglichen Server kopiert und alle Verweise auf die alte Domäne in dieser Datei aktualisiert haben. Es befindet sich im Stammverzeichnis Ihrer WordPress-Bereitstellung (falls Sie es verwenden).

Entweder das oder Sie haben irgendwo in Ihrer Tabelle wp_options in der Datenbank einen Verweis auf Ihre alte Domäne.

Beachten Sie, dass Bilder und Medienspeicherorte in Posts möglicherweise aktualisiert werden müssen, wenn Sie von einer Domäne zu einer anderen wechseln. Sie können dies entweder direkt in der Datenbank tun, ein Such-/Ersetzungsprogramm verwenden oder Ihre Bilder manuell in Ihren Posts erneut anzeigen. Eine alternative Methode zum Korrigieren Ihrer Beitragsdaten besteht im Exportieren aller Beiträge von Ihrer alten Site (aus dem Admin-Bedienfeld) - Extras> Exportieren> Alle Beiträge. Aktualisieren Sie dann die URL in dieser resultierenden Datei manuell, bevor Sie sie in Ihre neue Site importieren.

All dies und vieles mehr finden Sie unter codex.wordpress.org. Weitere Informationen finden Sie unter diesem Link:

http://codex.wordpress.org/Changing_The_Site_URL

WICHTIGE NOTIZEN:

  1. Wenn Sie irgendetwas direkt in der Datenbank ändern möchten, lesen Sie den Abschnitt mit den GUIDs.

  2. Wenn Sie Better WP Security , verwenden, gibt es andere Dinge, die Sie möglicherweise tun müssen, aber je nachdem, was Sie beschreiben, bezweifle ich, dass Sie es installiert haben.

1
Damien

Ich habe meine Multisite-Installation vor langer Zeit erstellt, als Sie ein Plugin für das Domain-Mapping benötigten. Ich hatte also die Datei '/wp-content/sunrise.php' und in der wp-config define( 'SUNRISE', 'on' );. Es hat bis zu einem kürzlich erfolgten Update auf WordPress funktioniert.

Ich habe diese Fehler in meinem debug.log angezeigt:

Undefined index: HTTP_Host in ../public_html/wp-content/sunrise.php on line 10
Undefined index: HTTP_Host in ../public_html/wp-includes/ms-settings.php on line 57

Also löschte ich die sunrise-Datei und die wp-config sunrise-Definition und fügte der wp-config-Datei @ max4ever/@ duck_boys Cookie-Definitionen hinzu:

define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', ''); 

Das hat das Problem gelöst. Ich kann mich jetzt einloggen !! Hinweis: Ich habe diese Definition ausprobiert und sie hat auch funktioniert. Genommen aus Multisite Setup-Anleitung

define( 'COOKIE_DOMAIN', $_SERVER[ 'HTTP_Host' ] );
0
cipher442

Folgender Schritt, um mein Problem zu lösen

auf wp-config.php

//define('WP_CACHE', true); // Added by W3 Total Cache Block this line
//define("COOKIE_DOMAIN", "www.domain.com"); Block this line

Löschen Sie folgende Dateien aus dem WP-Inhalt

object-cache.php 
advanced-cache.php
db.php
0
RAT

Ich bin auf diesen Fehler gestoßen, als ich versucht habe, eine wordpress site auf localhost zu installieren. Das Problem war diese Zeile in der .htaccess-Datei

Header edit Set-Cookie ^ (. *) $ $ 1; Nur HTTP; Sicher

Es verhindert, dass Cookies gesetzt werden, wenn sie nicht auf https eingestellt sind. Musste nur die Leitung entfernen.

0
Seb Fanals