私は何百ものソリューションのように感じられるものを検索し、それらすべてを実装しました。同じ質問を見つけるためにこのウェブサイトも検索しましたが、見つかりませんでした。
開発サイトと本番サイトがあります。2つの間で移行するには、githubのプッシュとプルを使用します。これは過去の問題ではありませんでしたが、この問題に何度も遭遇しました。ファイルの移行後、Drupalでログインできなくなりました。ログイン認証情報を入力しようとすると、すぐにアクセス拒否ページが表示されます。
私のサイトのCookieは問題なく読み書きできます。私はCookie IDを見つけ、それがデータベースのエントリであることを見つけました。したがって、Cookieは正常に機能しているようで、データベースエントリはある程度正常に機能しています。
私が見ることができる問題は、データベースセッションレコードがユーザーIDを保存していないことです。自分のIPのdbレコードのユーザーIDを手動で1に変更してから、Webサイトを更新すると、ログインします。
- /programming/2846935/cannot-login-to-drupal-in-chrome-or-firefox-but-safari-worksは、settings.phpファイルの$ cookie_domainを更新することを提案しています。私はすべての設定を試しましたが、それは役に立ちませんでした。
- http://www.go2linux.org/cannot-login-into-drupal-table-corruptedも、セッションテーブルを修復することをお勧めします。私はそれを行い、dbからセッションをクリアし、Cookieをクリアしました。それは動かなかった。
- http://www.madebymorgan.com/blog/2010/07/15/cant-login-after-drupal-617-upgradeは、settings.phpファイルの値$ cookie_domainと$ base_urlを更新することを提案しています。私はすべての組み合わせを試しましたが、失敗しました。
- 私は、適切なアクセス権と所有権のレベルについては、次のコマンドを実行すると言うのinstall.txtを読みました:
chmod o+w sites/default/settings.php
、chmod o+w sites/default
、chmod o+w sites/default/files
、chmod a-w sites/default/settings.php
、chmod a-w sites/default
。うまくいきませんでした。 - http://drupal.org/node/56357#comment-236726のパッチにより、セッションファイルにコードが追加されます。私はこれを実行しましたが、うまくいきませんでした。
- でhttp://drupal.org/node/56357#comment-391535、markus_petruxは新しい名前でPHPSESSIDを定義するだけでなく、手動でクッキーのドメインとパスを設定することにより、優れた提案を持っていました。うまくいきませんでした。
- http://old.nabble.com/Re%3A-Can%27t-login-p22258960.htmlは
register_shutdown_function('session_write_close');
、settings.phpの最後に追加することを推奨していますが、これも私にとってはうまくいきませんでした。 - http://drupal.org/node/6696#comment-204863は、いくつかのini設定をsettings.phpに追加し、キャッシュをクリアし、Cookieをクリアし、プライバシーをクリアし、Firefoxを再起動して、settings.phpに次の行を追加するように指示します。
ini_set('session.cookie_domain', 'exampleorg');
ini_set('session.cookie_domain','www.example.org');
ini_set('session.auto_start', 0);