移行後にログインできません


9

私は何百ものソリューションのように感じられるものを検索し、それらすべてを実装しました。同じ質問を見つけるためにこのウェブサイトも検索しましたが、見つかりませんでした。

開発サイトと本番サイトがあります。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.phpchmod o+w sites/defaultchmod o+w sites/default/fileschmod a-w sites/default/settings.phpchmod 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.htmlregister_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);

ここで少し発見しました。ログイン中にサイトがHTTPSとHTTPの間でトグルし続けます。だから、これがセッションを放棄しているのだろうかと思っています。
eコマースコンサルタント、

OMG私は私の問題を見つけました。SSLに対して間違った仮想ホストをセットアップしました。私のSSLは私のライブサイトではなく私の開発サイトを指していた。つまり、sslへのログイン時にリダイレクトされていたという事実は、ウェブサイトを完全に変更していることを意味していました。それは恐ろしいことでした...私は一日中かかりました..
eコマースコンサルタント

回答:


6

私にも同じ問題があり、それはに関連していましたmod_rewritemod_rewrite次のコマンドでを有効にして、問題を修正しました。

sudo a2enmod rewrite

時にはそれは最も簡単な解決策です。ありがとうございました!
mcriecken

3

ちなみに、sites \ default \ settings.phpファイルには、使用しているパスと同じ名前のCookieが含まれている必要があります。これにより、以前のWebサーバーのドメインがwww.boldlygowherenomanhasgonebefore.comで、drupalをlocalhostに移動した場合、Cookieはドメインはその変更を反映する必要があります:

WAS:変更 $cookie_domain = '.boldlygowherenomanhasgonebefore.com';
$cookie_domain = '.localhost';


あなたが勝ちました:)これはまさに私がやったことです
カシミィ14年

1

明らかにあなたの解決策ではありませんが、ここに来る他の人のために、私は同様の問題を抱えていました(ログインできません)が、私の問題は次のように解決されたきれいなURLの問題でした:

クリーンなURLで何かが起こっていて、それらは半機能的だったので、私はそれらを問​​題として却下しましたが、そうでした。

最終的に、DBの変数テーブルを編集し(LONGBLOBをLONGTEXTに変更できるようにした)、クリーンURLフラグをオフにし(「1」を「0」に設定)、キャッシュをクリアして変数のキャッシュバージョンを削除しました。

そして、物事は正しく機能しました。


0

これで問題の根本が解決されるわけではありませんが、ログインする必要がある場合は、Drushから常に1回限りのログインリンクを取得できます。

drush user-login theusername
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.