magentoコミュニティエディション1.7.0.2を使用しています。magentoのバックエンドにログインできません。この問題は、ChromeがCookieを受け入れないことが原因である可能性があることを知っています。しかし、それを修正する方法は助けてください。ありがとう
9 に答える
Magento管理パネルでhttpsを有効にした場合は、[システム] ->[構成]->[Web]->[セッションとCookieの管理]の[HTTPのみを使用]オプションに[いいえ]を設定してください。
データベースにアクセスできる場合は、テーブル「core_config_data」を開き、パス「web / cookie / cookie_httponly」を検索して、値を「0」に設定します。
必ずvar/cacheフォルダーを削除してください。次に、Magento管理パネルにログインしてみます。ほとんどの場合、今はできます。このスレッドに問題を投稿しない場合。
したがって、この「Magento管理パネルにログインできない」問題は主にMagentoのCookie設定に関連しています。したがって、この小さな問題が発生しても心配しないでください。このスレッドの回答のリストを使用すると、数分で簡単にこれを整理できます。
これには2つの解決策があり、どちらかが機能します。
- Cookieの有効期間の構成を変更します。バックエンド->システム->構成->Web->セッションとCookieの管理に移動します。Cookieの有効期間を86400に設定し、保存します。
- magentoディレクトリ内のapp/code / core / Mage / Core / Model / Session / Abstract/Varien.phpファイルに移動します。
コードを見つける:
session_set_cookie_params(
$this->getCookie()->getLifetime(),
$this->getCookie()->getPath(),
$this->getCookie()->getDomain(),
$this->getCookie()->isSecure(),
$this->getCookie()->getHttponly()
);
また
// session cookie params
$cookieParams = array(
'lifetime' => $cookie->getLifetime(),
'path' => $cookie->getPath(),
'domain' => $cookie->getConfigDomain(),
'secure' => $cookie->isSecure(),
'httponly' => $cookie->getHttponly()
);
と置き換えます
session_set_cookie_params(
$this->getCookie()->getLifetime(),
$this->getCookie()->getPath()
//$this->getCookie()->getDomain(),
//$this->getCookie()->isSecure(),
//$this->getCookie()->getHttponly()
);
また
// session cookie params
$cookieParams = array(
'lifetime' => $cookie->getLifetime(),
'path' => $cookie->getPath()
// 'domain' => $cookie->getConfigDomain(),
// 'secure' => $cookie->isSecure(),
// 'httponly' => $cookie->getHttponly()
);
この後、ファイルを保存します。
これまでのところ、他の場所でコードを変更するよりも、これが最善の解決策ですhttp://iamtheshadowonthesun.blogspot.com/2012/10/magento-cannot-login-to-admin-panel.html
phpMyAdminを使用して、magentoデータベースでcore_config_dataテーブルを探してクリックします。「検索」タブをクリックします。次に、[パス]列で、演算子をLIKE%...%に設定し、値をcookieに設定し、[実行]ボタンをクリックして検索します。
検索後、web / cookie / cookie_path、web / cookie / cookie_domain、web / cookie / cookie_httponly、およびweb / browser_capabilities/cookiesの値をNULLに設定します
私にとってうまくいったのは、Haijeromeですが、残念ながら、バックエンドにログインして構成を変更することはできません。これは、新しい新しいMagentoをインストールするたびに実行するものです。
insert into core_config_data(scope, scope_id, path, value) values("default", "0", "web/cookie/cookie_httponly", "0");
それから:
rm -Rf var/cache/mage--*
Chromeユーザーはカートにアイテムを追加できませんでした...Cookieの有効期間を推奨される86400に変更すると修正されました。
Magentoコミュニティ1.7
ありがとうございました!
ジェフ
問題は、chromeがログインCookieを保存していないことです。これは、chromeのCookieを確認することで確認できます。設定| コンテンツ| 高度な| すべてのCookieとサイトデータ
これが発生する理由はおそらくいくつかありますが、Cookieの有効期間は確かにその1つです。
個人的には、ローカルホスト/仮想マシンでmagentoを実行し、同じマシンのブラウザから接続しているときにこの問題が発生しました。特に問題は、ドメイン名が修飾されていない場合、chromeがCookieを保存しないことだと思われます。したがって、ドメイン名が「http:// localhost / magento」または「http:// somename / magento」の場合、ChromeはCookieを保存しないため、ログインできなくなります。
修正は次のとおりです。
これを単純にするために、私はmagentoがローカルホストで実行されている例に固執しています。magentoがVMで実行されていて、ローカルホストからアクセスしている場合も同じトリックが機能しますが、そのような場合は、ゲストOSとクライアントの両方でhostsファイルを変更する必要があります。(ゲストIPは変更される可能性があるため、ホスト上のhostsファイルを更新する必要があることを忘れないでください)
まず、ドメイン名を選択します。ローカルのみなので、登録する必要はありません。私は「dansmagentodev.com」を選択しています。その後、magentoで| システム| セキュアとアンセキュアの両方でbaseurlを http://dansmagentodev.com/magento/に変更します
次に、同じ場所で、セッションCookie管理の「Cookieドメイン」を「dansmagentodev.com」に変更します。
次に、dansmagentodev.comが実際にローカルホストであることを認識するようにシステムを構成する必要があります。これは、hostsファイルを介して行います。Windowsでは、このファイルはC:\ Windows \ System32 \ drivers \ etc\hostsにあります。ウイルスチェッカーはおそらくそれを変更するのを止めようとします(正当な理由で、変更を行う間はウイルスチェッカーを無効にしてください)。次に、127.0.0.1dansmagentodev.comという行を追加します。
そして今、chromeからログインします。
簡単な解決策の1つは、Operaブラウザを使用してインストールを行い、Cookie自体を保存するため、Operaブラウザを使用してログインすることです。できます!
私の問題は、私が実行していたサーバーが、サーバーのメンテナンス構成がほとんどないUbuntuの新規インストールであったという事実でした。
日付と時刻は更新されておらず、3時間遅れていました。
これにより、Chromeが受け取ったCookieはすでに期限切れになっているように見えるため、ChromeはCookieを破棄しました。
Firefoxで動作する場合。次に、問題はChromeのCookieです。ChromeのCookieをクリアしてみてください。