迁移后 Magento 无法登录管理员

Posted

技术标签:

【中文标题】迁移后 Magento 无法登录管理员【英文标题】:Magento can't log in in admin after migration 【发布时间】:2014-05-17 00:02:51 【问题描述】:

迁移后我无法登录管理面板。输入用户名和密码后,重新加载相同的页面。 我试过了:

Can't log in to Magento Admin

Magento: Can't log into admin [duplicate]

Magento admin login not working

Magento can't login in admin with right username and password

但没有任何效果 我试图注释掉

中的代码行
app/code/core/Mage/Core/Model/Session/Abstract/Varien.php.

什么都没有!

我更改了 core_config_data web/unsecure/base_url 和 web/secure/base_url

我的想法不多了, 感谢您的帮助!

编辑:

我检查了旧服务器上的 cookie,在登录页面上我得到一个 adminhtml cookie,但在新服务器上我没有得到一个 hz_amChecked cookie。

编辑 2:

新服务器在现场,也许我在那里的设置中遗漏了一些东西 我尝试在app/code/core/Mage/Core/Model/Session/Abstract/Varien.php 中添加die(),但没有任何反应。

【问题讨论】:

您是否检查以确保新服务器满足 magento 最低系统要求并且所有文件夹都具有正确的权限?你清除了你的 var/cache 了吗? 我清除了我的 var/cache 并安装了一个干净版本的 magento 并且它工作了,然后我用旧数据库更改了新的 magento 安装的数据库,并且弹出了同样的问题,所以问题是我想在数据库的某个地方 您是否对 /app/etc/local.xml 中的<crypt> 进行了任何更改 没有对app/etc/local.xml中的<crypt>做任何修改 【参考方案1】:

在您的 php.ini 中启用 max_input_vars 并为您的服务器增加值

;How many GET/POST/COOKIE input variables may be accepted
;max_input_vars = 1000
max_input_vars = 35000

【讨论】:

【参考方案2】:

我在这件事上所做的是我创建了一个新的管理员帐户,我以为我忘记了管理面板的密码。

要创建新的管理员用户,只需复制并粘贴包含您的值的命令即可。

php bin/magento admin:user:create --admin-user="username" --admin-password="password" --admin-email="admin@email.com" --admin-firstname="admin_first_name" --admin-lastname="Admin_last_name"

【讨论】:

【参考方案3】:

问题原因

你知道为什么会出现这个问题吗?出现问题是因为磁电机 无法存储 cookie。我们将其作为 localhost 运行,而 localhost 不正确 域,但要存储 cookie,我们需要一个域。这就是登录停止的原因 一句话也不说。

解决方法:进入app/code/core/Mage/Core/Model/Session/Abstract/Varien.php 文件在你的magento目录中。

查找代码:

session_set_cookie_params(
  $this->getCookie()->getLifetime(),
  $this->getCookie()->getPath(),
  $this->getCookie()->getDomain(),
  $this->getCookie()->isSecure(),
  $this->getCookie()->getHttponly()
);

替换为

session_set_cookie_params(
  $this->getCookie()->getLifetime(),
  $this->getCookie()->getPath()
  //$this->getCookie()->getDomain(),
  //$this->getCookie()->isSecure(),
  //$this->getCookie()->getHttponly()
  );

【讨论】:

【参考方案4】:

我遇到了同样的问题 - 这些步骤解决了我的问题

1) 清除或删除 /var/cache/* 和 /var/session/* 文件夹中的所有文件 2) 清除浏览器缓存/cookies

如果这不起作用,请确保会话和缓存目录是可写的

如果仍然无法正常工作,请尝试此查询 在 PHPMyADMIN 中运行这个查询:

SET FOREIGN_KEY_CHECKS=0; 更新core_store SET store_id = 0 WHERE code='admin'; 更新core_store_group SET group_id = 0 WHERE name='Default'; 更新core_website SET website_id = 0 WHERE code='admin'; 更新customer_group SET customer_group_id = 0 WHERE customer_group_code='未登录'; SET FOREIGN_KEY_CHECKS=1;

【讨论】:

【参考方案5】:

我发现了问题,就在/app/etc/local.xml中:

<install>
   <date><![CDATA[Day, dd Mth yyyy HH:mm:ss +0000]]></date>
</install>

我不认为安装的时间很重要,但是我将 +0000 更改为与新安装的 magento 相同的值,并且

<session_save><![CDATA[file]]></session_save>

<session_save><![CDATA[db]]></session_save>

清除了var/cachevar/session 的文件并在浏览器中从我的站点中删除了所有 cookie,它成功了!终于可以休息一下了:) 无论如何,谢谢大家的帮助!

【讨论】:

你从哪里得到的magento安装时间值? @richelliot 我在必须迁移本地安装的服务器上安装了 magento,发现时差不同【参考方案6】:

您可以尝试将 path web/secure/base_urlcore_cofig_data value 字段从非安全 URL 更改为安全 URL,例如请将其从 http://example.com/ 更改为 https://example.com/ 。当我迁移我的一个 magento 网站时,它解决了我的管理员登录问题。

【讨论】:

以上是关于迁移后 Magento 无法登录管理员的主要内容,如果未能解决你的问题,请参考以下文章

安装完magento后,其他电脑无法访问magento,URL自动跳转到http://localhost/magento

Django 管理员无法使用自定义用户模型正确登录

切换到django 3并返回django 2后无法登录Django项目

升级到 2.1 后 Django 管理员无法登录

创建超级用户后无法登录 django 管理员帐户

将客户重定向到另一家商店-Magento 2