我使用的是 magento 1.8.1.0。在将 magento 从本地服务器传输到实时服务器时,我无法登录到管理仪表板。有时它显示空白页面,有时它重定向到相同的管理员登录页面。
我在谷歌上搜索了很多关于这个问题的信息,并尝试了我发现的所有可能的解决方案,如下所示:
- 在 Varien.php 中注释掉 $configParams 数组的一些元素
- 在数据库表 core_config_data 中,我将“web/unsecure/base_url”和“web/secure/base_url/”更改为“http://example.com/”,将“web/cookie/cookie_path”更改为“/”和“web/cookie”/cookie_domain”到“.example.com”
- 编辑“app/etc/local.xml”文件并保持正确的mysql主机名、用户名、密码和数据库名
- 清除“var/cache”和“var/session”文件夹
- 将文件权限更改为 775 以避免任何权限错误
应用所有这些错误后,问题仍未解决。登录到管理员仍然显示空白页面或重定向到同一页面。我认为这是 session cookie的问题。我迫切需要帮助。请我求人来解决这个问题。提前谢谢你。
最佳答案
我解决了这个问题。然而,我看到许多 magento 初学者在第一次尝试将 magento 从本地主机移动到实时服务器时遇到了困难,并且没有一个地方可以解决这个问题。在这里,我试图通过我提到的有用链接和一些其他步骤使这篇文章成为这个问题的单一解决方案,这样你们就不用谷歌太多了。
除了本博客中提到的步骤外,您还必须执行一些其他步骤才能使其正常工作。
- 在数据库表“core_config_data”中将“web/cookie/cookie_path”更改为“/”
- 同样,将“web/cookie/cookie_domain”更改为“.yourdomain.com”
将“app/code/core/Mage/Core/Model/Session/Abstract/Varien.php”中的某行代码注释掉,如下所示
在 magento 1.8.1.0 中,它位于第 88 到 94 行。
$cookieParams = array( 'lifetime' => $cookie->getLifetime(), 'path' => $cookie->getPath()/*, 'domain' => $cookie->getConfigDomain(), 'secure' => $cookie->isSecure(), 'httponly' => $cookie->getHttponly() */ );
这应该可以解决将 magento 从本地主机移动到实时服务器的问题。但是,如果您仍然无法像我一样以管理员身份登录,请检查您的日志文件。就我而言,我必须安装“PHP curl 库”。
我希望这对其他人有帮助。
关于php - 为什么 magento 有时会显示空白页面,有时会在管理员登录后重定向到同一管理员登录页面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24217721/