web-dev-qa-db-ja.com

ログインページに「クッキーがブロックされているか、ブラウザでサポートされていません」と表示される

私はWPインストールをserver-a.example.com serverA )に持っていて、それをserver-b.example.com serverB )である別のサーバーに複製したいのです。

私のステップは:

  1. データベースをコピーする
  2. ファイルをコピーする
    • wp-config.phpを編集する必要はありません(データベースの詳細はまったく同じ、l​​ocalhostは同じユーザー、同じパスワード)
  3. このツール を使用して、 serverA domainを serverB に置き換えます。

serverB クローンは機能するようですが、2つの問題が発生します。

  1. エラーを受け取ったため、 serverB wp-adminにログインできません。

    Cookieがブロックされているか、ブラウザによってサポートされていません

  2. WordPressはアクティブテーマを変更します

今、私は問題#2の背後にある理由を理解したいのですが、それはとりあえずそれをあなたに本当の問題を見つけるためのヒントかもしれないので私はそれを報告しただけです。

問題は、どうやってログインするのですか?言うまでもなく、私のブラウザはクッキーをサポートしていて、私は他のブラウザでも試しました。 (念のため)SQLで管理者パスワードを再設定しようとしましたが、それでもCookieメッセージが表示されてブロックされます。

P.Sこの質問がここにあるのか、サーバーのデフォルトになるのか、またはその他にあるのかわからないので、必要に応じて移動してください。

編集:

他の既存の質問 に対する受け入れられた答えが私の場合には成り立たないので、これは重複していません:私のサーバーにはVarnish/NGINX/Squid /他のリバースプロキシがありません。

3
Lucio Crusca

確認するためにいくつかのことをまとめました。

@ottoこのコメントへのコメント 投稿

ログインページのHTMLソースを見てください。最初のDOCTYPE行の前に何かありますか?空白行でも?もしそうなら、あなたはヘッダが作られる前に出力を作成するコードの一部を持っています、その場合これはクッキーを設定することを妨げます。

/からのいくつかの提案 いくつかの追加のアイデアを含む関連性の高い投稿 Stack Overflowについて:

wp-config.phpファイルには何も変更する必要はないと言っていましたが、古いドメインへの参照が存在する可能性があります。これが必要でないことを確認してください。)

wp_optionsテーブルのsiteurlおよびhomeに対してURLが正しいことを確認してください。これらはwp-config.phpに以下を追加することで簡単にリセットできます。

define('WP_HOME','http://your-domain.com');
define('WP_SITEURL','http://your-domain.com');

wp-config.phpをチェックして、不適切に設定されているDOMAIN_CURRENT_SITE定数を確認してください。

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

W3 Total Cacheプラグインが使用されていた場合は、プラグインをプラグインディレクトリから一時的に削除し、次の行がwp-config.phpからコメントアウトまたは削除されていることを確認します。

define('WP_CACHE', true);
define("COOKIE_DOMAIN", "www.domain.com");

次に、wp-contentディレクトリから次のファイルを削除します。

w3-total-cache-config.php 
object-cache.php 
advanced-cache.php
db.php
4
Dave Romsey