サーバーを移動した後、私は自分のサイトにログインできません。 「エラー:クッキーがブロックされているか、ブラウザでサポートされていません。ワードプレスを使用するにはクッキーを有効にする必要があります。」と表示されます。ログインフォームを送信しようとするとエラーが発生します。
私のブラウザはクッキーをサポートしており、ブロックされていないことを確信しています。
私はこれをかなり徹底的に研究して、私が見つけたあらゆる提案を試みました:
wp-config.phpにADMIN_COOKIE_PATH、COOKIE_DOMAIN、COOKIEPATH、およびSITECOOKIEPATHを設定します。
define('ADMIN_COOKIE_PATH', '/');
define('COOKIE_DOMAIN', '');
define('COOKIEPATH', '');
define('SITECOOKIEPATH', '');
wp-login.phpにこのハッキングを試みた: https://wordpress.org/support/topic/cookies-are-blocked-or-not-supported-by-your-browser-1#post-5026171
私は自分のローカルインストールでそのサイトにログインすることができ、私たちの開発サーバーのそのサイトにログインすることができます。何がこれを引き起こしている可能性がありますか?
それはワニスでした。
私たちのウェブホストはDrupal特有の方法でVarnishをセットアップしていました、そしてそれはWordPressがログインを扱うために使うクッキーを除外していました。
/ *の前にwp-config.phpの下に以下の行を追加してください。これですべてです、編集を中止します!... * /
define('COOKIE_DOMAIN', $_SERVER['HTTP_Host'] );
/* That's all, stop editing! Happy blogging. */
私はグーグルになり、このクッキーの問題を取り除くためにあらゆる方法を試しました。最後に私はあなたを助けることができる2つの解決策を見つけました。
解決策1:
yoursite/wp-login.php
行770-773の後にコメントする
コード
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);
一部のWebサイトでは機能する可能性があり、一部のサイトでは空白のページが表示される可能性があります。さらに、このファイルはwordpressの更新後に上書きされる可能性があるため、これはお勧めできません。そのため、2番目の解決策を試してください。
解決策2:
yoursite/wp-content/themes/yourthemeFolder/functions.php
次のコードを配置してください。
setcookie(TEST_COOKIE, 'WP Cookie check', 0, COOKIEPATH, COOKIE_DOMAIN);
if ( SITECOOKIEPATH != COOKIEPATH )
setcookie(TEST_COOKIE, 'WP Cookie check', 0, SITECOOKIEPATH, COOKIE_DOMAIN);
テーマを更新するとこれらの変更も失われる可能性があるため、このコードを現在アクティブなテーマのchild-themeフォルダの下にある別のfunctions.phpに配置してください。願って、これはあなたを助けるでしょう。
私は最近この問題を抱えていましたが、ドメイン名はウェブサイトに向けられていましたが、wordpressマルチサイトはデータベースにドメイン名を正しいブログにマッピングするレコードを持っていなかったので、wordpressが設定しようとしたときクッキー、それはマッピングドメインの代わりにサブドメインのクッキーを設定していました。